This talk was given at BADCamp (Bay Area Drupal Camp) 2014 as an impromptu keynote. In it I talk about the technology that might put Drupal at risk, including Node.js, Angular.js, GitHub and more. I also talk about Drupal's strengths and how we can prepare for the future.
20. Github vs. Drupal.org
100 pages of comments
57 points of comparison
https://groups.drupal.org/node/313068
21. The Competition
Realtime application building
Realtime interaction
DRY to the extreme
(Do not Repeat Yourself)
One language = Faster to learn
2-50x faster on the server
25. Established audience
= Feedback loop
People use Drupal
Drupal better
People make
what’s needed
People tell us
26. Mature community
(for the most part)
Camps, Cons, User Groups
Drupal Association
Governance Group
Initiatives
Code of Conduct
Working Groups
27. Best Practices
Add page programmatically
Create a list of content
Alter a form
Allow manipulation
of your code
Share code with others
Use hook_menu()
Use Views
Use hook_form_alter()
Create an alter hook
Share a module on D.o
29. TestBot
http://qa.drupal.org
Patches require tests
Over 500 tests run on every patch
Hours of man-hours saved each run
6000 runs made every month
30. The Incumbent
Stable releases
Established audience
Mature community
Automation
Best practices
On the Plateau of Productivity
31. Drupal
Stable releases
Project Realtime
Realtime application building
Established audience
Mature community
Automation
Best practices
Realtime interaction
DRY to the extreme
On the Plateau of Productivity
One language
(faster to learn)
32. Project Realtime
CHANGE
Drupal
Stable releases
Realtime application building
Established audience
Mature community
Automation
Best practices
Realtime interaction
DRY to the extreme
On the Plateau of Productivity
One language
(faster to learn)
33. The problem with big changes is that
they’re hard to understand.
Big changes probably have to be
made to stay relevant.
Big changes won’t happen if the
community doesn’t support it.
37. OOP Benefits:
1. Clearer interfaces
2. Unit testing
3. Greater complexity can be managed
4. Components are more re-usable
5. Community of users grows
38. The cost of OOP
1. Re-training of the Drupal developer
community
2. Added complexity in the short-term
44. 3rd Party Library Benefits:
1. Less Drupal-specific code to manage
2. More sharing between communities
45. The cost of 3rd Party
Libraries
1. Dashing away of the work of core
developers
2. Dependency on other communities
3. Changes have to be approved by
library owners
46. The End User
Workflow
Step 1: Copy and paste from example code until it
works.
Step 2: Memorize certain patterns enough to
write code from memory.
Step 3: Learn more about the underlying
structures when needed.
48. What is Drupal?
Are we still Drupal if we use OOP?
Are we still Drupal if we use Symfony?
Are we still Drupal if we convert all our PHP
to JavaScript and use Node.js?
Are we still Drupal if it becomes much
harder to contribute?
49. When will Drupal die?
Are big changes needed to manage Drupal’s
growing complexity?
Are big changes needed to keep Drupal
relevant to the users it currently serves?
Will we be able to make big changes with
the support of the community in the future?