The potential in Drupal 8.x and how to realize it › sites › default › files... · Pain points...

30

Transcript of The potential in Drupal 8.x and how to realize it › sites › default › files... · Pain points...

Page 1: The potential in Drupal 8.x and how to realize it › sites › default › files... · Pain points from Drupal 7 and Drupal 8.0.x Bikeshedding, especially of user-facing changes
Page 2: The potential in Drupal 8.x and how to realize it › sites › default › files... · Pain points from Drupal 7 and Drupal 8.0.x Bikeshedding, especially of user-facing changes

The potential in Drupal 8.x and how to realize it Angela Byron, Gábor Hojtsy

Page 3: The potential in Drupal 8.x and how to realize it › sites › default › files... · Pain points from Drupal 7 and Drupal 8.0.x Bikeshedding, especially of user-facing changes

1. Drupal 8: The dawn of new possibilities

Page 4: The potential in Drupal 8.x and how to realize it › sites › default › files... · Pain points from Drupal 7 and Drupal 8.0.x Bikeshedding, especially of user-facing changes

Making big changes in 8.x: It's possible!

Page 5: The potential in Drupal 8.x and how to realize it › sites › default › files... · Pain points from Drupal 7 and Drupal 8.0.x Bikeshedding, especially of user-facing changes

Intro to semantic versioning

We are here

Page 6: The potential in Drupal 8.x and how to realize it › sites › default › files... · Pain points from Drupal 7 and Drupal 8.0.x Bikeshedding, especially of user-facing changes

Predictable

Improvements every 6 months

Incentive to contribute

Backwards- compatible

Page 7: The potential in Drupal 8.x and how to realize it › sites › default › files... · Pain points from Drupal 7 and Drupal 8.0.x Bikeshedding, especially of user-facing changes

2. What to improve?

Page 8: The potential in Drupal 8.x and how to realize it › sites › default › files... · Pain points from Drupal 7 and Drupal 8.0.x Bikeshedding, especially of user-facing changes

"Top-down" goals (from committers)

Migrate UI

Configuration Management

Frontend testing

Media

Blocks and layouts

Workflow

Page 9: The potential in Drupal 8.x and how to realize it › sites › default › files... · Pain points from Drupal 7 and Drupal 8.0.x Bikeshedding, especially of user-facing changes

"Bottom-up" goals (from community)

BigPipe

Contact for basic web forms

Twig

Picture support

Admin style guide

Improved entities

Page 10: The potential in Drupal 8.x and how to realize it › sites › default › files... · Pain points from Drupal 7 and Drupal 8.0.x Bikeshedding, especially of user-facing changes

www.drupal.org/core/roadmap

Page 11: The potential in Drupal 8.x and how to realize it › sites › default › files... · Pain points from Drupal 7 and Drupal 8.0.x Bikeshedding, especially of user-facing changes

3. But… how?

Page 12: The potential in Drupal 8.x and how to realize it › sites › default › files... · Pain points from Drupal 7 and Drupal 8.0.x Bikeshedding, especially of user-facing changes

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

Page 13: The potential in Drupal 8.x and how to realize it › sites › default › files... · Pain points from Drupal 7 and Drupal 8.0.x Bikeshedding, especially of user-facing changes

1. Iterate quickly and cheaply on ideas2. Clear sign-off points to avoid wasting time3. Involve the right stakeholders at the right time4. Gain visibility for proposals from committers5. Reduce barriers to entry into core for new ideas6. Clear visibility of priorities for the community

Ideas for improvement

Page 14: The potential in Drupal 8.x and how to realize it › sites › default › files... · Pain points from Drupal 7 and Drupal 8.0.x Bikeshedding, especially of user-facing changes

How *other* people improve products

Page 15: The potential in Drupal 8.x and how to realize it › sites › default › files... · Pain points from Drupal 7 and Drupal 8.0.x Bikeshedding, especially of user-facing changes

Possible implementation for Drupal core

Proto-type

Core (experim

ental)

Core (stable)Build Idea

Plan

Refine

Spec Ship Gates

Page 16: The potential in Drupal 8.x and how to realize it › sites › default › files... · Pain points from Drupal 7 and Drupal 8.0.x Bikeshedding, especially of user-facing changes

Note: This is *just* a proposal...about how to make proposals. ;)

Your feedback needed!

Page 17: The potential in Drupal 8.x and how to realize it › sites › default › files... · Pain points from Drupal 7 and Drupal 8.0.x Bikeshedding, especially of user-facing changes

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"

Page 18: The potential in Drupal 8.x and how to realize it › sites › default › files... · Pain points from Drupal 7 and Drupal 8.0.x Bikeshedding, especially of user-facing changes

Plan template (beta)

https://www.drupal.org/core/initiative-proposal-template

Page 19: The potential in Drupal 8.x and how to realize it › sites › default › files... · Pain points from Drupal 7 and Drupal 8.0.x Bikeshedding, especially of user-facing changes

For compelling 8.x minor releases...

Page 20: The potential in Drupal 8.x and how to realize it › sites › default › files... · Pain points from Drupal 7 and Drupal 8.0.x Bikeshedding, especially of user-facing changes

1. Prototype iteratively, as cheaply as possible2. Validate prototype with real users3. Once validation occurs, the prototype becomes a spec4. Now, No. More. Bikeshedding. ;)

Proto-type Build

Spec

Page 21: The potential in Drupal 8.x and how to realize it › sites › default › files... · Pain points from Drupal 7 and Drupal 8.0.x Bikeshedding, especially of user-facing changes
Page 22: The potential in Drupal 8.x and how to realize it › sites › default › files... · Pain points from Drupal 7 and Drupal 8.0.x Bikeshedding, especially of user-facing changes

Who to talk to? At least some of these folks.

CommittersProduct

ManagersFramework ManagersRelease

Managers

SubsystemMaintainers

Shortcut module

...

Field systemQueue system

Topic Maintainers

Usability

Accessibility

Performance

Testing

DocumentationBlock module

MAINTAINERS.txt && d.o/project/governance

Initiative Coordinators

Content Workflow

...

Web Services

Media

Multilingual

Page 23: The potential in Drupal 8.x and how to realize it › sites › default › files... · Pain points from Drupal 7 and Drupal 8.0.x Bikeshedding, especially of user-facing changes

1. Now, spec becomes core patch2. However, most "core gates" (except MVP testing! :)) are

bypassed3. Initially goes in as "Experimental" module4. Bikeshedding opens again after shipping. ;)

Core (experim

ental)Build

Ship

Page 24: The potential in Drupal 8.x and how to realize it › sites › default › files... · Pain points from Drupal 7 and Drupal 8.0.x Bikeshedding, especially of user-facing changes

Experimental modules

Pros ConsAlready 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

Page 25: The potential in Drupal 8.x and how to realize it › sites › default › files... · Pain points from Drupal 7 and Drupal 8.0.x Bikeshedding, especially of user-facing changes

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 (experim

ental)

Core (stable)

Gates

Page 26: The potential in Drupal 8.x and how to realize it › sites › default › files... · Pain points from Drupal 7 and Drupal 8.0.x Bikeshedding, especially of user-facing changes

Summary1. Get sign-off/rejection *before* doing tons of work2. Validate direction with real-world data vs. bikeshedding3. Make it cheaper/easier/faster to improve core all around4. Jump through the right hoops at the right time5. …6. Profit! :P

Page 27: The potential in Drupal 8.x and how to realize it › sites › default › files... · Pain points from Drupal 7 and Drupal 8.0.x Bikeshedding, especially of user-facing changes

4. What do you think?

Page 28: The potential in Drupal 8.x and how to realize it › sites › default › files... · Pain points from Drupal 7 and Drupal 8.0.x Bikeshedding, especially of user-facing changes

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?

Page 29: The potential in Drupal 8.x and how to realize it › sites › default › files... · Pain points from Drupal 7 and Drupal 8.0.x Bikeshedding, especially of user-facing changes

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

Page 30: The potential in Drupal 8.x and how to realize it › sites › default › files... · Pain points from Drupal 7 and Drupal 8.0.x Bikeshedding, especially of user-facing changes

So How Was It? - Tell Us What You ThinkEvaluate this session - https://events.drupal.org/node/9866

Thanks!