The potential in Drupal 8.x and
how to realize it
Angela Byron, Gábor Hojtsy
1.Drupal 8:
The dawn of new possibilities
Making big changes in 8.x:
It's possible!
Intro to semantic versioning
We are
here
Predictabl
e
Improvement
s every 6
months
Incentive
to
contribute
Backward
s-
compatibl
e
2. What to improve?
"Top-down" goals (from committers)
Migrate UI
Configuration
Management
Frontend testing
Media
Blocks and
layouts
Workflow
"Bottom-up" goals (from community)
BigPipe
Contact for basic
web forms
Twig
Picture support
Admin style guide
Improved entities
www.drupal.org/core/roadmap
3. But… how?
Pain points from Drupal 7 and Drupal 8.0.x
Bikeshedding, especially of user-facing changes
Work hard on something, may still get rejected
Directional feedback vs. standards nitpicks
Don't validate ideas until *after* shipping; now too late to fix
Giant core patch vs. sandbox vs. contrib vs. core
1. Iterate quickly and cheaply on ideas
2. Clear sign-off points to avoid wasting time
3. Involve the right stakeholders at the right time
4. Gain visibility for proposals from committers
5. Reduce barriers to entry into core for new ideas
6. Clear visibility of priorities for the community
Ideas for improvement
How *other* people improve products
Possible implementation for Drupal core
Proto
-
type
Core
(experi
mental)
Core
(stable)
BuildIdea
Plan
Refin
e
Spec Ship Gates
Note: This is *just* a
proposal
...about how to make proposals. ;)
Your feedback needed!
Idea
Plan
Proto
-
type
1. "Idea" is just a few sentences (lean UX-style)
2. Get sign-off / rejection right away (product management)
3. To get to next phase, formulate a "Plan"
Plan template (beta)
https://www.drupal.org/core/initiative-proposal-
For compelling 8.x minor releases...
1. Prototype iteratively, as cheaply as possible
2. Validate prototype with real users
3. Once validation occurs, the prototype becomes a spec
4. Now, No. More. Bikeshedding. ;)
Proto
-
type
Build
Spec
Who to talk to? At least some of these folks.
Committers
Product
Managers
Framewor
k
Managers
Release
Managers
Subsystem
Maintainers
Shortcut
module
...
Field system
Queue
system
Topic
Maintainers
Usability
Accessibility
Performance
Testing
DocumentationBlock module
MAINTAINERS.txt && d.o/project/governance
Initiative
Coordinators
Content
Workflow
...
Web Services
Media
Multilingual
1. Now, spec becomes core patch
2. However, most "core gates" (except MVP testing! :)) are bypassed
3. Initially goes in as "Experimental" module
4. Bikeshedding opens again after shipping. ;)
Core
(experi
mental)
Build
Ship
Experimental modules
Pros Cons
Already in core
Can be less stable
Familiar core process
Easy for end users
Iterate quickly
Cannot commit directly
Needs reviewers
System-wide changes
not possible
Risk of lingering
technical debt
1. Once iterated on a few times, move to "proper" core module.
2. This requires all sign-offs, core gates, etc.
3. Radical refinements no longer possible without a new experimental
module.
4. Enjoy!
Core
(experi
mental)
Core
(stable)
Gates
Summary
1. Get sign-off/rejection *before* doing tons of work
2. Validate direction with real-world data vs. bikeshedding
3. Make it cheaper/easier/faster to improve core all around
4. Jump through the right hoops at the right time
5. …
6. Profit! :P
4. What do you think?
Discuss!
Are the pain points addressed?
Balance of bureaucracy vs. unpleasant surprise?
How do we get ideas on the roadmap?
What about the implementation details?
Notes
Join us for Sprints
First-Time Sprinter Workshop - 9am-12pm in Room 271-273
Mentored Core Sprint - 9am-6pm in Room 275-277
General Sprints - 9am-6pm in Room 278-282
Friday, May 13 at the Convention Center
So How Was It? - Tell Us What You
Think
Evaluate this session - https://events.drupal.org/node/9866
Than
ks!

The potential in Drupal 8.x and how to realize it

  • 1.
    The potential inDrupal 8.x and how to realize it Angela Byron, Gábor Hojtsy
  • 2.
    1.Drupal 8: The dawnof new possibilities
  • 3.
    Making big changesin 8.x: It's possible!
  • 4.
    Intro to semanticversioning We are here
  • 5.
  • 6.
    2. What toimprove?
  • 7.
    "Top-down" goals (fromcommitters) Migrate UI Configuration Management Frontend testing Media Blocks and layouts Workflow
  • 8.
    "Bottom-up" goals (fromcommunity) BigPipe Contact for basic web forms Twig Picture support Admin style guide Improved entities
  • 9.
  • 10.
  • 11.
    Pain points fromDrupal 7 and Drupal 8.0.x Bikeshedding, especially of user-facing changes Work hard on something, may still get rejected Directional feedback vs. standards nitpicks Don't validate ideas until *after* shipping; now too late to fix Giant core patch vs. sandbox vs. contrib vs. core
  • 12.
    1. Iterate quicklyand cheaply on ideas 2. Clear sign-off points to avoid wasting time 3. Involve the right stakeholders at the right time 4. Gain visibility for proposals from committers 5. Reduce barriers to entry into core for new ideas 6. Clear visibility of priorities for the community Ideas for improvement
  • 13.
    How *other* peopleimprove products
  • 14.
    Possible implementation forDrupal core Proto - type Core (experi mental) Core (stable) BuildIdea Plan Refin e Spec Ship Gates
  • 15.
    Note: This is*just* a proposal ...about how to make proposals. ;) Your feedback needed!
  • 16.
    Idea Plan Proto - type 1. "Idea" isjust a few sentences (lean UX-style) 2. Get sign-off / rejection right away (product management) 3. To get to next phase, formulate a "Plan"
  • 17.
  • 18.
    For compelling 8.xminor releases...
  • 19.
    1. Prototype iteratively,as cheaply as possible 2. Validate prototype with real users 3. Once validation occurs, the prototype becomes a spec 4. Now, No. More. Bikeshedding. ;) Proto - type Build Spec
  • 21.
    Who to talkto? At least some of these folks. Committers Product Managers Framewor k Managers Release Managers Subsystem Maintainers Shortcut module ... Field system Queue system Topic Maintainers Usability Accessibility Performance Testing DocumentationBlock module MAINTAINERS.txt && d.o/project/governance Initiative Coordinators Content Workflow ... Web Services Media Multilingual
  • 22.
    1. Now, specbecomes core patch 2. However, most "core gates" (except MVP testing! :)) are bypassed 3. Initially goes in as "Experimental" module 4. Bikeshedding opens again after shipping. ;) Core (experi mental) Build Ship
  • 23.
    Experimental modules Pros Cons Alreadyin core Can be less stable Familiar core process Easy for end users Iterate quickly Cannot commit directly Needs reviewers System-wide changes not possible Risk of lingering technical debt
  • 24.
    1. Once iteratedon a few times, move to "proper" core module. 2. This requires all sign-offs, core gates, etc. 3. Radical refinements no longer possible without a new experimental module. 4. Enjoy! Core (experi mental) Core (stable) Gates
  • 25.
    Summary 1. Get sign-off/rejection*before* doing tons of work 2. Validate direction with real-world data vs. bikeshedding 3. Make it cheaper/easier/faster to improve core all around 4. Jump through the right hoops at the right time 5. … 6. Profit! :P
  • 26.
    4. What doyou think?
  • 27.
    Discuss! Are the painpoints addressed? Balance of bureaucracy vs. unpleasant surprise? How do we get ideas on the roadmap? What about the implementation details?
  • 28.
  • 29.
    Join us forSprints First-Time Sprinter Workshop - 9am-12pm in Room 271-273 Mentored Core Sprint - 9am-6pm in Room 275-277 General Sprints - 9am-6pm in Room 278-282 Friday, May 13 at the Convention Center
  • 30.
    So How WasIt? - Tell Us What You Think Evaluate this session - https://events.drupal.org/node/9866 Than ks!

Editor's Notes

  • #4 Compare/contrst Drupal 7 / 8 We can redesign and replace user interfaces in Drupal 8, not possible in Drupal 7 We can expand existing APIs and add new APIs in Drupal 8
  • #5 MInor versions every 6 months, backwards compatible features and API additions Beta / RC phases in advance of release. We actually made the date we set 5 months earlier for 8.1.0 Older minor version is EOLed when new one is available
  • #10 Other historic pages: https://www.drupal.org/community-initiatives/drupal-core https://www.drupal.org/getting-involved https://www.drupal.org/drupal-8.0/get-involved
  • #24 Also mention this in relation to core branches which we stopped talking about. :P