SlideShare ist ein Scribd-Unternehmen logo
1 von 53
Downloaden Sie, um offline zu lesen
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

Weitere ähnliche Inhalte

Was ist angesagt?

Golang Microservices meetup
Golang Microservices meetupGolang Microservices meetup
Golang Microservices meetupGirish Ramnani
 
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!Marco Pegoraro
 
Let's Git Together! - Hacktoberfest 2020
Let's Git Together! - Hacktoberfest 2020Let's Git Together! - Hacktoberfest 2020
Let's Git Together! - Hacktoberfest 2020EqraKhattak
 
Introduction to git and gitgub
Introduction to git and gitgubIntroduction to git and gitgub
Introduction to git and gitgubMamun Rashid, CCDH
 
Surgeons guide plugin development
Surgeons guide plugin developmentSurgeons guide plugin development
Surgeons guide plugin developmentafragen
 
Contributing to Open Source #Hacktoberfest
Contributing to Open Source #HacktoberfestContributing to Open Source #Hacktoberfest
Contributing to Open Source #HacktoberfestCheah Eng Soon
 
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...Edureka!
 

Was ist angesagt? (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...
 

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

When Will Drupal Die? (Keynote talk)
When Will Drupal Die? (Keynote talk)When Will Drupal Die? (Keynote talk)
When Will Drupal Die? (Keynote talk)chrisshattuck
 
Open event (show&tell april 2016)
Open event (show&tell april 2016)Open event (show&tell april 2016)
Open event (show&tell april 2016)Jorge López-Lago
 
Исполнение JS на сервере при масштабировании - что может пойти не так, Brian ...
Исполнение JS на сервере при масштабировании - что может пойти не так, Brian ...Исполнение JS на сервере при масштабировании - что может пойти не так, Brian ...
Исполнение JS на сервере при масштабировании - что может пойти не так, Brian ...Ontico
 
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 2022intouchgroup2
 
What Web Framework To Use?
What Web Framework To Use?What Web Framework To Use?
What Web Framework To Use?Kasra Khosravi
 
When Will Drupal Die?
When Will Drupal Die?When Will Drupal Die?
When Will Drupal Die?chrisshattuck
 
Java And Community Support
Java And Community SupportJava And Community Support
Java And Community SupportWilliam Grosso
 
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...Altinity Ltd
 
Hadoop at Yahoo! -- University Talks
Hadoop at Yahoo! -- University TalksHadoop at Yahoo! -- University Talks
Hadoop at Yahoo! -- University Talksyhadoop
 
Introduction to Go
Introduction to GoIntroduction to Go
Introduction to GoSimon Hewitt
 
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?TechMagic
 
Docker Enables DevOps - Boston
Docker Enables DevOps - BostonDocker Enables DevOps - Boston
Docker Enables DevOps - BostonBoyd Hemphill
 
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 QualityNational Cheng Kung University
 
Fed Up Of Framework Hype Dcphp
Fed Up Of Framework Hype DcphpFed Up Of Framework Hype Dcphp
Fed Up Of Framework Hype DcphpTony Bibbs
 
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 visionJorge Ferrer
 
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 efficientlyBruno Capuano
 
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 VangorderRedis Labs
 
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 coreDick Olsson
 
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 7Jay Epstein
 

Ähnlich wie 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
 

Mehr von chrisshattuck

Unrestricted Play - Boise Play Lab Presentation
Unrestricted Play - Boise Play Lab PresentationUnrestricted Play - Boise Play Lab Presentation
Unrestricted Play - Boise Play Lab Presentationchrisshattuck
 
Mentored training intro slides - BadCamp 2014
Mentored training intro slides - BadCamp 2014Mentored training intro slides - BadCamp 2014
Mentored training intro slides - BadCamp 2014chrisshattuck
 
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...chrisshattuck
 
Mentored training-intro-slides
Mentored training-intro-slidesMentored training-intro-slides
Mentored training-intro-slideschrisshattuck
 
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.1chrisshattuck
 
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 Freelancerchrisshattuck
 
Drupal Development Security Essentials
Drupal Development Security EssentialsDrupal Development Security Essentials
Drupal Development Security Essentialschrisshattuck
 
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
 
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 Toolschrisshattuck
 

Mehr von 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
 

Kürzlich hochgeladen

Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Zilliz
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesrafiqahmad00786416
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodJuan lago vázquez
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Bhuvaneswari Subramani
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MIND CTI
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontologyjohnbeverley2021
 
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.pdfsudhanshuwaghmare1
 
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 FresherRemote DBA Services
 
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 SavingEdi Saputra
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityWSO2
 
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 TerraformAndrey Devyatkin
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...apidays
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...apidays
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistandanishmna97
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...Zilliz
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024The Digital Insurer
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxRemote DBA Services
 

Kürzlich hochgeladen (20)

Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
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
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 
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
 
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
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
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
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 

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