Slide 1

Slide 1 text

No content

Slide 2

Slide 2 text

Mike Herchel @mikeherchel

Slide 3

Slide 3 text

No content

Slide 4

Slide 4 text

No content

Slide 5

Slide 5 text

Overview • Perceptions • Similarities • Core Differences • What can Drupal learn from WordPress? • What can WordPress learn from Drupal?

Slide 6

Slide 6 text

Perceptions

Slide 7

Slide 7 text

No content

Slide 8

Slide 8 text

No content

Slide 9

Slide 9 text

Similarities

Slide 10

Slide 10 text

Both are Tools to do a job

Slide 11

Slide 11 text

Free Open Source Software FTW!

Slide 12

Slide 12 text

Both use PHP

Slide 13

Slide 13 text

Both use themes/templates for site appearance, and plugins/modules for extending features

Slide 14

Slide 14 text

Both have amazing and strong communities

Slide 15

Slide 15 text

https://central.wordcamp.org/schedule/

Slide 16

Slide 16 text

https://www.drupical.com/

Slide 17

Slide 17 text

https://www.phase2technology.com/blog/open-atrium-2-proudly-invented-elsewhere/ Terminology

Slide 18

Slide 18 text

Terminology Module → Plugin Node → Post Block → Widget Acquia → Automattic Drupalcon → WordCamp US DrupalCamp → WordCamp Drupal Assoc. → WordPress Found. Content Types → Post Types

Slide 19

Slide 19 text

“Core Differences”

Slide 20

Slide 20 text

• More developer centric • More developed APIs • Symfony PHP framework in core • Object Oriented PHP • Twig Templating • Configuration export to version control • Separate DB tables per field • No auto-updates • No auto-installation of themes Drupal’s Architecture

Slide 21

Slide 21 text

• Drupal’s modules more like tools that enable you to build additional functionality • Drupal modules have a built in API that allows them to set dependencies to other modules • Its very common for modules to depend on ones created by different authors, with very few conflicts. • It’s not uncommon for Drupal sites to have over 100 modules installed. Drupal’s Architecture

Slide 22

Slide 22 text

• Drupal separates functionality from theme • Drupal’s theme is used to render markup around functionality, in addition to styling and JavaScript • Site Building: Functionality is generally built using core modules such as fields and Views • Non-standard markup • Makes it more difficult to purchase themes with built in functionality Drupal’s Architecture

Slide 23

Slide 23 text

WordPress and Drupal Economies

Slide 24

Slide 24 text

Extension Ecosystem

Slide 25

Slide 25 text

WordPress Ecosystem • Robust theme ecosystem • Very common to pay money for themes • Incentivizes people to create new themes • Robust plugin ecosystem • Common to pay money • Incentivizes people to create new plugins

Slide 26

Slide 26 text

Drupal Economy • No modules for sale (all are free on Drupal.org) • Incentivizes code contributions • Developers make money by consulting • Having more contributions to code enables you to charge more • Incentivizes community to not reinvent the wheel, but to improve / collaborate on existing wheel.

Slide 27

Slide 27 text

Drupal Economy • Weak commercial theme ecosystem • Because functionality is so decoupled from presentation, markup is generally one-off, which makes it difficult to have turn-key themes. • Because of that, there’s not a large selection of commercial themes, Drupal sites tend to be more complicated and want custom themes.

Slide 28

Slide 28 text

What can Drupal learn from WordPress?

Slide 29

Slide 29 text

No content

Slide 30

Slide 30 text

No content

Slide 31

Slide 31 text

On-boarding New Devs • Theme browser integrated into dashboard* • Module browser integrated into dashboard* • Automatic updates*

Slide 32

Slide 32 text

More Needed Changes • Media management • More core committers • Better Documentation Tools • Easier updates between major versions

Slide 33

Slide 33 text

Preserving backward compatibility often requires that you drag historical baggage along, and in interpreted languages like PHP, this comes at a significant performance cost. — Dries Buytaert in 2006

Slide 34

Slide 34 text

Updating from Drupal 8's latest version to Drupal 9.0.0 should be as easy as updating between minor versions of Drupal 8. — Dries Buytaert in 2017

Slide 35

Slide 35 text

What can WordPress learn from Drupal?

Slide 36

Slide 36 text

No content

Slide 37

Slide 37 text

More & Better APIs • FormAPI / RenderAPI • Ability to manage content types and fields though GUI (FieldAPI) • API for plugins to depend on another which would enable building off one another

Slide 38

Slide 38 text

More Developer Friendly • Robust caching • Configuration management • More / better code sprints

Slide 39

Slide 39 text

Security Improvements • Brute force detection / Flood control • Set WP’s min PHP requirement to supported PHP version • Official mailing list for all security issues

Slide 40

Slide 40 text

Special Thanks

Slide 41

Slide 41 text

– Me (and a bunch of other people) Competition is Healthy!

Slide 42

Slide 42 text

www.fldrupal.camp

Slide 43

Slide 43 text

` Questions / Comments?