SlideShare una empresa de Scribd logo
1 de 53
Descargar para leer sin conexión
WHEN WILL 
DRUPAL DIE? 
Chris Shattuck 
@chris_shattuck 
chris@buildamodule.com
WHEN WILL 
DRUPAL DIE? 
Chris Shattuck 
@chris_shattuck 
chris@buildamodule.com
Darth Blogger
Darth Blogger
Backdrop
Backdrop
?
1 
The Competition 
(Project Realtime)
http://plnkr.co
Live Coding - Bret Victor 
http://vimeo.com/36579366
MEAN Stack 
MongoDB 
Express.js 
Angular.js 
Node.js
Drupal Stack 
Apache 
MySQL 
PHP 
JavaScript 
jQuery 
Symfony
Apache (C++) 
MySQL 
PHP 
JavaScript 
jQuery 
Symfony 
! 
Node.js 
MongoDB 
JavaScript 
Angular.js 
Express.js 
SERVER 
DATABASE 
SERVER-SIDE LANGUAGE 
CLIENT-SIDE LANGUAGE 
CLIENT-SIDE FRAMEWORK 
SERVER-SIDE FRAMEWORK
Apache (C++) 
MySQL 
PHP 
JavaScript 
jQuery 
Symfony 
! 
Node.js 
MongoDB 
JavaScript 
Angular.js 
Express.js 
SERVER 
DATABASE 
SERVER-SIDE LANGUAGE 
CLIENT-SIDE LANGUAGE 
CLIENT-SIDE FRAMEWORK 
SERVER-SIDE FRAMEWORK 
1 
2 
3 
4 
1
Woah, only one 
language?
Meteor
(Meteor example)
Github vs. Drupal.org 
100 pages of comments 
57 points of comparison 
https://groups.drupal.org/node/313068
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
Project Realtime 
Drupal
2 
The Incumbent 
(i.e. Drupal!)
Stable release cycles 
5…6…7…8 2007 
2008 
2011 
2015 
Security + bug fixes 
Security + bug fixes 
Security + bug fixes 
28% of Universities 
http://w3techs.com/technologies/segmentation/tld-edu-/content_management 
150 Governments 
https://groups.drupal.org/government-sites 
23 Fortune 500 Main Sites 
http://www.zyxware.com/articles/4351/list-of-fortune-500-companies-using-drupal-for-their-websites 
!
Established audience 
= Feedback loop 
People use Drupal 
Drupal better 
People make 
what’s needed 
People tell us
Mature community 
(for the most part) 
Camps, Cons, User Groups 
Drupal Association 
Governance Group 
Initiatives 
Code of Conduct 
Working Groups
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
Hype Cycle is (probably) Over 
Node.js 
Angular.js
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
The Incumbent 
Stable releases 
Established audience 
Mature community 
Automation 
Best practices 
On the Plateau of Productivity
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)
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)
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.
Controversial Changes 
in Drupal 8 
1. OOP 
2. 3rd Party Libraries
OOP?
Procedural vs. Object-oriented 
Procedural Object-oriented
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
The cost of OOP 
1. Re-training of the Drupal developer 
community 
2. Added complexity in the short-term
3rd Party Libraries
composer.json file from Drupal 8
3rd Party Library Benefits: 
1. Less Drupal-specific code to manage 
2. More sharing between communities
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
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.
Is Drupal Doomed?
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?
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?
Project Realtime 
Drupal
Drupal 
Project Realtime 
Drupal 8 
Drupal 8.1.0 
Drupal 9
Thank you, 
you’re awesome! 
Chris Shattuck 
@chris_shattuck 
chris@buildamodule.com
Thank you, 
you’re awesome! 
Chris Shattuck 
@chris_shattuck 
chris@buildamodule.com

Más contenido relacionado

La actualidad más candente

La actualidad más candente (11)

Golang Microservices meetup
Golang Microservices meetupGolang Microservices meetup
Golang Microservices meetup
 
Future of Grails
Future of GrailsFuture of Grails
Future of Grails
 
How Perl Changed My Life
How Perl Changed My LifeHow Perl Changed My Life
How Perl Changed My Life
 
FrontBox - what frontend web development is? Let's discover ReactJS!
FrontBox - what frontend web development is? Let's discover ReactJS!FrontBox - what frontend web development is? Let's discover ReactJS!
FrontBox - what frontend web development is? Let's discover ReactJS!
 
Let's Git Together! - Hacktoberfest 2020
Let's Git Together! - Hacktoberfest 2020Let's Git Together! - Hacktoberfest 2020
Let's Git Together! - Hacktoberfest 2020
 
Kotlin & Swift
Kotlin & SwiftKotlin & Swift
Kotlin & Swift
 
Hacktoberfest slides
Hacktoberfest slidesHacktoberfest slides
Hacktoberfest slides
 
Introduction to git and gitgub
Introduction to git and gitgubIntroduction to git and gitgub
Introduction to git and gitgub
 
Surgeons guide plugin development
Surgeons guide plugin developmentSurgeons guide plugin development
Surgeons guide plugin development
 
Contributing to Open Source #Hacktoberfest
Contributing to Open Source #HacktoberfestContributing to Open Source #Hacktoberfest
Contributing to Open Source #Hacktoberfest
 
Git Tutorial | Git Basics - Branching, Merging, Rebasing | Learn Git | DevOps...
Git Tutorial | Git Basics - Branching, Merging, Rebasing | Learn Git | DevOps...Git Tutorial | Git Basics - Branching, Merging, Rebasing | Learn Git | DevOps...
Git Tutorial | Git Basics - Branching, Merging, Rebasing | Learn Git | DevOps...
 

Similar a When Will Drupal Die? Keynote talk from Bay Area Drupal Camp 2014

Исполнение JS на сервере при масштабировании - что может пойти не так, Brian ...
Исполнение JS на сервере при масштабировании - что может пойти не так, Brian ...Исполнение JS на сервере при масштабировании - что может пойти не так, Brian ...
Исполнение JS на сервере при масштабировании - что может пойти не так, Brian ...
Ontico
 
When Will Drupal Die?
When Will Drupal Die?When Will Drupal Die?
When Will Drupal Die?
chrisshattuck
 
Hadoop at Yahoo! -- University Talks
Hadoop at Yahoo! -- University TalksHadoop at Yahoo! -- University Talks
Hadoop at Yahoo! -- University Talks
yhadoop
 
Evolving Your Distributed Cache In A Continuous Delivery World: Tyler Vangorder
Evolving Your Distributed Cache In A Continuous Delivery World: Tyler VangorderEvolving Your Distributed Cache In A Continuous Delivery World: Tyler Vangorder
Evolving Your Distributed Cache In A Continuous Delivery World: Tyler Vangorder
Redis Labs
 

Similar a When Will Drupal Die? Keynote talk from Bay Area Drupal Camp 2014 (20)

When Will Drupal Die? (Keynote talk)
When Will Drupal Die? (Keynote talk)When Will Drupal Die? (Keynote talk)
When Will Drupal Die? (Keynote talk)
 
Dean4j@Njug5
Dean4j@Njug5Dean4j@Njug5
Dean4j@Njug5
 
Open event (show&tell april 2016)
Open event (show&tell april 2016)Open event (show&tell april 2016)
Open event (show&tell april 2016)
 
Исполнение JS на сервере при масштабировании - что может пойти не так, Brian ...
Исполнение JS на сервере при масштабировании - что может пойти не так, Brian ...Исполнение JS на сервере при масштабировании - что может пойти не так, Brian ...
Исполнение JS на сервере при масштабировании - что может пойти не так, Brian ...
 
Top 10 web development tools in 2022
Top 10 web development tools in 2022Top 10 web development tools in 2022
Top 10 web development tools in 2022
 
What Web Framework To Use?
What Web Framework To Use?What Web Framework To Use?
What Web Framework To Use?
 
When Will Drupal Die?
When Will Drupal Die?When Will Drupal Die?
When Will Drupal Die?
 
Java And Community Support
Java And Community SupportJava And Community Support
Java And Community Support
 
OSA Con 2022 - What Data Engineering Can Learn from Frontend Engineering - Pe...
OSA Con 2022 - What Data Engineering Can Learn from Frontend Engineering - Pe...OSA Con 2022 - What Data Engineering Can Learn from Frontend Engineering - Pe...
OSA Con 2022 - What Data Engineering Can Learn from Frontend Engineering - Pe...
 
Hadoop at Yahoo! -- University Talks
Hadoop at Yahoo! -- University TalksHadoop at Yahoo! -- University Talks
Hadoop at Yahoo! -- University Talks
 
Introduction to Go
Introduction to GoIntroduction to Go
Introduction to Go
 
Angular 2 vs React. What to chose in 2017?
Angular 2 vs React. What to chose in 2017?Angular 2 vs React. What to chose in 2017?
Angular 2 vs React. What to chose in 2017?
 
Docker Enables DevOps - Boston
Docker Enables DevOps - BostonDocker Enables DevOps - Boston
Docker Enables DevOps - Boston
 
Build Community Android Distribution and Ensure the Quality
Build Community Android Distribution and Ensure the QualityBuild Community Android Distribution and Ensure the Quality
Build Community Android Distribution and Ensure the Quality
 
Fed Up Of Framework Hype Dcphp
Fed Up Of Framework Hype DcphpFed Up Of Framework Hype Dcphp
Fed Up Of Framework Hype Dcphp
 
Liferay DevCon 2014: Lliferay Platform - A new and exciting vision
Liferay DevCon 2014: Lliferay Platform - A new and exciting visionLiferay DevCon 2014: Lliferay Platform - A new and exciting vision
Liferay DevCon 2014: Lliferay Platform - A new and exciting vision
 
2017 03 25 Microsoft Hacks, How to code efficiently
2017 03 25 Microsoft Hacks, How to code efficiently2017 03 25 Microsoft Hacks, How to code efficiently
2017 03 25 Microsoft Hacks, How to code efficiently
 
Evolving Your Distributed Cache In A Continuous Delivery World: Tyler Vangorder
Evolving Your Distributed Cache In A Continuous Delivery World: Tyler VangorderEvolving Your Distributed Cache In A Continuous Delivery World: Tyler Vangorder
Evolving Your Distributed Cache In A Continuous Delivery World: Tyler Vangorder
 
We need revisions and CRAP everywhere in Drupal core
We need revisions and CRAP everywhere in Drupal coreWe need revisions and CRAP everywhere in Drupal core
We need revisions and CRAP everywhere in Drupal core
 
Building Websites of the Future With Drupal 7
Building Websites of the Future With Drupal 7Building Websites of the Future With Drupal 7
Building Websites of the Future With Drupal 7
 

Más de chrisshattuck

Mentored training-intro-slides
Mentored training-intro-slidesMentored training-intro-slides
Mentored training-intro-slides
chrisshattuck
 
Powering a Lean Startup With Drupal V.1
Powering a Lean Startup With Drupal V.1Powering a Lean Startup With Drupal V.1
Powering a Lean Startup With Drupal V.1
chrisshattuck
 
Everything I Know About Making Money and Being Happy as a Freelancer
Everything I Know About Making Money and Being Happy as a FreelancerEverything I Know About Making Money and Being Happy as a Freelancer
Everything I Know About Making Money and Being Happy as a Freelancer
chrisshattuck
 
Victoria BC Drupalcamp Presentation - Drupal Development Evolved!
Victoria BC Drupalcamp Presentation - Drupal Development Evolved!Victoria BC Drupalcamp Presentation - Drupal Development Evolved!
Victoria BC Drupalcamp Presentation - Drupal Development Evolved!
chrisshattuck
 

Más de chrisshattuck (10)

Unrestricted Play - Boise Play Lab Presentation
Unrestricted Play - Boise Play Lab PresentationUnrestricted Play - Boise Play Lab Presentation
Unrestricted Play - Boise Play Lab Presentation
 
Mentored training intro slides - BadCamp 2014
Mentored training intro slides - BadCamp 2014Mentored training intro slides - BadCamp 2014
Mentored training intro slides - BadCamp 2014
 
DrupalCon Austin BuildAModule Training "Drupal For Beginners" Introduction Sl...
DrupalCon Austin BuildAModule Training "Drupal For Beginners" Introduction Sl...DrupalCon Austin BuildAModule Training "Drupal For Beginners" Introduction Sl...
DrupalCon Austin BuildAModule Training "Drupal For Beginners" Introduction Sl...
 
Mentored training-intro-slides
Mentored training-intro-slidesMentored training-intro-slides
Mentored training-intro-slides
 
Powering a Lean Startup With Drupal V.1
Powering a Lean Startup With Drupal V.1Powering a Lean Startup With Drupal V.1
Powering a Lean Startup With Drupal V.1
 
Everything I Know About Making Money and Being Happy as a Freelancer
Everything I Know About Making Money and Being Happy as a FreelancerEverything I Know About Making Money and Being Happy as a Freelancer
Everything I Know About Making Money and Being Happy as a Freelancer
 
Drupal Kick Butt
Drupal Kick ButtDrupal Kick Butt
Drupal Kick Butt
 
Drupal Development Security Essentials
Drupal Development Security EssentialsDrupal Development Security Essentials
Drupal Development Security Essentials
 
Victoria BC Drupalcamp Presentation - Drupal Development Evolved!
Victoria BC Drupalcamp Presentation - Drupal Development Evolved!Victoria BC Drupalcamp Presentation - Drupal Development Evolved!
Victoria BC Drupalcamp Presentation - Drupal Development Evolved!
 
Plugging Into The Drupal Community - Essential Tools
Plugging Into The Drupal Community - Essential ToolsPlugging Into The Drupal Community - Essential Tools
Plugging Into The Drupal Community - Essential Tools
 

Último

+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 

Último (20)

Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu SubbuApidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 

When Will Drupal Die? Keynote talk from Bay Area Drupal Camp 2014

  • 1. WHEN WILL DRUPAL DIE? Chris Shattuck @chris_shattuck chris@buildamodule.com
  • 2. WHEN WILL DRUPAL DIE? Chris Shattuck @chris_shattuck chris@buildamodule.com
  • 7. ?
  • 8. 1 The Competition (Project Realtime)
  • 9.
  • 11. Live Coding - Bret Victor http://vimeo.com/36579366
  • 12. MEAN Stack MongoDB Express.js Angular.js Node.js
  • 13. Drupal Stack Apache MySQL PHP JavaScript jQuery Symfony
  • 14. Apache (C++) MySQL PHP JavaScript jQuery Symfony ! Node.js MongoDB JavaScript Angular.js Express.js SERVER DATABASE SERVER-SIDE LANGUAGE CLIENT-SIDE LANGUAGE CLIENT-SIDE FRAMEWORK SERVER-SIDE FRAMEWORK
  • 15. Apache (C++) MySQL PHP JavaScript jQuery Symfony ! Node.js MongoDB JavaScript Angular.js Express.js SERVER DATABASE SERVER-SIDE LANGUAGE CLIENT-SIDE LANGUAGE CLIENT-SIDE FRAMEWORK SERVER-SIDE FRAMEWORK 1 2 3 4 1
  • 16. Woah, only one language?
  • 19.
  • 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
  • 23. 2 The Incumbent (i.e. Drupal!)
  • 24. Stable release cycles 5…6…7…8 2007 2008 2011 2015 Security + bug fixes Security + bug fixes Security + bug fixes 28% of Universities http://w3techs.com/technologies/segmentation/tld-edu-/content_management 150 Governments https://groups.drupal.org/government-sites 23 Fortune 500 Main Sites http://www.zyxware.com/articles/4351/list-of-fortune-500-companies-using-drupal-for-their-websites !
  • 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
  • 28. Hype Cycle is (probably) Over Node.js Angular.js
  • 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.
  • 34. Controversial Changes in Drupal 8 1. OOP 2. 3rd Party Libraries
  • 35. OOP?
  • 36. Procedural vs. Object-oriented Procedural Object-oriented
  • 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
  • 40.
  • 41.
  • 42.
  • 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?
  • 51. Drupal Project Realtime Drupal 8 Drupal 8.1.0 Drupal 9
  • 52. Thank you, you’re awesome! Chris Shattuck @chris_shattuck chris@buildamodule.com
  • 53. Thank you, you’re awesome! Chris Shattuck @chris_shattuck chris@buildamodule.com