1 of 45

Lessons From Bringing Change to 33.6% of the Web

Anthony Burchell - @antpb on social media

TITLE 1

Tiffany #0ECAD4

Mirage #002838

Seafoam #50E3C2

Lapis #007EEA

Royal #7E5CEF

Polar #F4F7FA

Ash #98A2A7

Soot #6B757B

Sunset #FF6C29 Dollabillz #43AB3C

2 of 45

Quick about me

Anthony Burchell

WordPress Developer at WP Engine

Co-Lead the release of WordPress 5.0

Maintainer of Media in WordPress

Game Developer -

Check out http://broken.place

And my VR WordPress POC: https://torquemag.io/2018/04/preparing-your-content-for-the-extended-reality-xr-future/

TITLE 1

Tiffany #0ECAD4

Mirage #002838

Seafoam #50E3C2

Lapis #007EEA

Royal #7E5CEF

Polar #F4F7FA

Ash #98A2A7

Soot #6B757B

Sunset #FF6C29 Dollabillz #43AB3C

3 of 45

WordPress, really quick

  • Content Management System
  • GPL (WOO!)
  • Makes up 33.6% of all websites,
  • CMS market share of 60.6%.
  • Supported by an ecosystem of over $10B/year*

AGENDA

Tiffany #0ECAD4

Mirage #002838

Seafoam #50E3C2

Lapis #007EEA

Royal #7E5CEF

Polar #F4F7FA

Ash #98A2A7

Soot #6B757B

Sunset #FF6C29 Dollabillz #43AB3C

4 of 45

AGENDA

Tiffany #0ECAD4

Mirage #002838

Seafoam #50E3C2

Lapis #007EEA

Royal #7E5CEF

Polar #F4F7FA

Ash #98A2A7

Soot #6B757B

Sunset #FF6C29 Dollabillz #43AB3C

5 of 45

Who Makes WordPress?

  • Thousands of contributors.
  • Companies that contribute talented individual’s time
  • Leaders in the Tech Community - often sponsored
  • 20 teams made up of volunteers across the planet.

AGENDA

Tiffany #0ECAD4

Mirage #002838

Seafoam #50E3C2

Lapis #007EEA

Royal #7E5CEF

Polar #F4F7FA

Ash #98A2A7

Soot #6B757B

Sunset #FF6C29 Dollabillz #43AB3C

6 of 45

Who is the community?

  • 511,000+ active members in WordPress meetup groups all over the world.
  • Thousands of code contributors
  • Thousands of contributors outside of core code
  • Plugin/Theme developers, hosting companies, maintenance services, SEO agencies, web design freelancers...etc
  • Users of the software (the big unknown)

AGENDA

Tiffany #0ECAD4

Mirage #002838

Seafoam #50E3C2

Lapis #007EEA

Royal #7E5CEF

Polar #F4F7FA

Ash #98A2A7

Soot #6B757B

Sunset #FF6C29 Dollabillz #43AB3C

7 of 45

Who Funds these contributors?

  • Companies that have interest in WordPress and digital publishing ecosystem
  • Contractors/Freelancers/Influencers looking to advance their service/brand

Comitters in WordPress

AGENDA

Tiffany #0ECAD4

Mirage #002838

Seafoam #50E3C2

Lapis #007EEA

Royal #7E5CEF

Polar #F4F7FA

Ash #98A2A7

Soot #6B757B

Sunset #FF6C29 Dollabillz #43AB3C

8 of 45

Who has the most influence in pushing new features?

  • Companies that contribute talented individual’s time
  • Leaders in the Community - often sponsored
  • Committers - in charge of merging code
  • Lead Developers -
  • People writing code
  • Ultimately, people that can show up

AGENDA

Tiffany #0ECAD4

Mirage #002838

Seafoam #50E3C2

Lapis #007EEA

Royal #7E5CEF

Polar #F4F7FA

Ash #98A2A7

Soot #6B757B

Sunset #FF6C29 Dollabillz #43AB3C

9 of 45

What changed in WordPress? Why did we need to?

  • Gutenberg is the project name given to a ground up rebuild of the post editor.
  • Post Editor was 12 years mostly unchanged before last December.
  • Last major change was around 2010.
  • Plain and simple, It needed to be modernized.

AGENDA

Tiffany #0ECAD4

Mirage #002838

Seafoam #50E3C2

Lapis #007EEA

Royal #7E5CEF

Polar #F4F7FA

Ash #98A2A7

Soot #6B757B

Sunset #FF6C29 Dollabillz #43AB3C

10 of 45

~2011

AGENDA

Tiffany #0ECAD4

Mirage #002838

Seafoam #50E3C2

Lapis #007EEA

Royal #7E5CEF

Polar #F4F7FA

Ash #98A2A7

Soot #6B757B

Sunset #FF6C29 Dollabillz #43AB3C

11 of 45

2018

  • Editor was 12 years old.
  • Last major change was 2008.

AGENDA

Tiffany #0ECAD4

Mirage #002838

Seafoam #50E3C2

Lapis #007EEA

Royal #7E5CEF

Polar #F4F7FA

Ash #98A2A7

Soot #6B757B

Sunset #FF6C29 Dollabillz #43AB3C

12 of 45

AGENDA

Tiffany #0ECAD4

Mirage #002838

Seafoam #50E3C2

Lapis #007EEA

Royal #7E5CEF

Polar #F4F7FA

Ash #98A2A7

Soot #6B757B

Sunset #FF6C29 Dollabillz #43AB3C

13 of 45

2018

  • Editor was 12 years old.
  • Last major change was 2008.

AGENDA

Tiffany #0ECAD4

Mirage #002838

Seafoam #50E3C2

Lapis #007EEA

Royal #7E5CEF

Polar #F4F7FA

Ash #98A2A7

Soot #6B757B

Sunset #FF6C29 Dollabillz #43AB3C

14 of 45

2018

  • Editor was 12 years old.
  • Last major change was 2008.

AGENDA

Tiffany #0ECAD4

Mirage #002838

Seafoam #50E3C2

Lapis #007EEA

Royal #7E5CEF

Polar #F4F7FA

Ash #98A2A7

Soot #6B757B

Sunset #FF6C29 Dollabillz #43AB3C

15 of 45

2018

Ecom provider

Ecom provider

Ecom provider

AGENDA

Tiffany #0ECAD4

Mirage #002838

Seafoam #50E3C2

Lapis #007EEA

Royal #7E5CEF

Polar #F4F7FA

Ash #98A2A7

Soot #6B757B

Sunset #FF6C29 Dollabillz #43AB3C

16 of 45

A modern editor was needed to prepare for the future.

  • React was chosen to ensure WordPress is built for the next 15 years of the web.
  • Block structure to managing content

AGENDA

Tiffany #0ECAD4

Mirage #002838

Seafoam #50E3C2

Lapis #007EEA

Royal #7E5CEF

Polar #F4F7FA

Ash #98A2A7

Soot #6B757B

Sunset #FF6C29 Dollabillz #43AB3C

17 of 45

Quick demo!

AGENDA

Tiffany #0ECAD4

Mirage #002838

Seafoam #50E3C2

Lapis #007EEA

Royal #7E5CEF

Polar #F4F7FA

Ash #98A2A7

Soot #6B757B

Sunset #FF6C29 Dollabillz #43AB3C

18 of 45

Who Decides Change in WordPress?

  • Release Lead is a title given to those who are leading a WordPress release cycle.
  • Lead Developers are those who influence the project’s direction and are highly involved in the decision-making process.
  • Core Developers are permanent committers.
  • Contributing Developers are guest committers, feature plugin lead developers, and other contributors highlighted by the release lead.

AGENDA

Tiffany #0ECAD4

Mirage #002838

Seafoam #50E3C2

Lapis #007EEA

Royal #7E5CEF

Polar #F4F7FA

Ash #98A2A7

Soot #6B757B

Sunset #FF6C29 Dollabillz #43AB3C

19 of 45

My advice...

AGENDA

Tiffany #0ECAD4

Mirage #002838

Seafoam #50E3C2

Lapis #007EEA

Royal #7E5CEF

Polar #F4F7FA

Ash #98A2A7

Soot #6B757B

Sunset #FF6C29 Dollabillz #43AB3C

20 of 45

Try new features in a plugin or extension (if you can)

  • Gutenberg as a plugin was a major success.
  • Allowed for rapid iteration
  • Clearly defined scope of expected changes to Core WordPress
  • Allows users to get bleeding edge updates even after updating to 5.0

AGENDA

Tiffany #0ECAD4

Mirage #002838

Seafoam #50E3C2

Lapis #007EEA

Royal #7E5CEF

Polar #F4F7FA

Ash #98A2A7

Soot #6B757B

Sunset #FF6C29 Dollabillz #43AB3C

21 of 45

Always have a backup plan - Classic Editor

  • If your project allows it, have a way for users to maintain deprecated features.
  • Classic Editor allowed for the previous post editor experience to be maintained even with the update to 5.0.
  • Agreement to officially support until 2022

AGENDA

Tiffany #0ECAD4

Mirage #002838

Seafoam #50E3C2

Lapis #007EEA

Royal #7E5CEF

Polar #F4F7FA

Ash #98A2A7

Soot #6B757B

Sunset #FF6C29 Dollabillz #43AB3C

22 of 45

Check for Compatibility across your ecosystem

  • Initiative led by contributor Daniel Bachhuber allowed for a database of known breakage in the upgrade to 5.0.
  • Goals were:
    • Know the most likely causes of incompatibility.
    • Focus developer outreach on the highest impact problems.
    • Proactively educate WordPress users on whether or not their WordPress installation is ready for Gutenberg.

AGENDA

Tiffany #0ECAD4

Mirage #002838

Seafoam #50E3C2

Lapis #007EEA

Royal #7E5CEF

Polar #F4F7FA

Ash #98A2A7

Soot #6B757B

Sunset #FF6C29 Dollabillz #43AB3C

23 of 45

Have many release leads...12 even

  • Main Release Lead
  • Design
  • Default Themes:
  • New Theme:
  • Accessibility:
  • JavaScript Packages
  • Media:
  • Merge:
  • Triage
  • Project Management:
  • REST API:
  • Upgrade Process:

AGENDA

Tiffany #0ECAD4

Mirage #002838

Seafoam #50E3C2

Lapis #007EEA

Royal #7E5CEF

Polar #F4F7FA

Ash #98A2A7

Soot #6B757B

Sunset #FF6C29 Dollabillz #43AB3C

24 of 45

Have Clear Leaders

  • This goes deeper than a named “Release Lead” or “Co-Lead”.
  • Have a clear point of contact to the person that can approve or deny a requested change.
  • If there is someone that has to approve features or code, make sure that person is available to give feedback.

AGENDA

Tiffany #0ECAD4

Mirage #002838

Seafoam #50E3C2

Lapis #007EEA

Royal #7E5CEF

Polar #F4F7FA

Ash #98A2A7

Soot #6B757B

Sunset #FF6C29 Dollabillz #43AB3C

25 of 45

Maintainers keep things moving.

  • Maintainers are incredibly important to the success of a release. They are often the most informed contributors to the project.
  • These folks have their ear to the ground, ask them for updates. Use their front line experience and perspective.
  • They are great candidates to be Leads for a release

AGENDA

Tiffany #0ECAD4

Mirage #002838

Seafoam #50E3C2

Lapis #007EEA

Royal #7E5CEF

Polar #F4F7FA

Ash #98A2A7

Soot #6B757B

Sunset #FF6C29 Dollabillz #43AB3C

26 of 45

New Contributors bring good perspective. �Make them feel welcome.

  • They have likely BEEN using your software. Listen to them!
  • It’s easy to be consumed by the community bubble, but many users are not involved at the core level of your software. Get to know their needs in relation to your change.
  • Try to understand where their feedback is based from...many people make their living using your software.
  • These users will often show you a use case for your software that you would not expect

AGENDA

Tiffany #0ECAD4

Mirage #002838

Seafoam #50E3C2

Lapis #007EEA

Royal #7E5CEF

Polar #F4F7FA

Ash #98A2A7

Soot #6B757B

Sunset #FF6C29 Dollabillz #43AB3C

27 of 45

Let go of back-compat (within reason)

  • Some backwards compatibility can’t happen with certain features
    • Find those impacted developers and give them options
    • If it is something like an extension or plugin, offer guidance on how to update to the new code
  • WordPress has historically been excellent with maintaining backwards compatibility. With a full rebuild of the editor, we had to leave some things behind.
  • Even though we did, it was a massive success and had minimal backlash. We didn’t see anywhere close to the volume of downed sites as I expected.

AGENDA

Tiffany #0ECAD4

Mirage #002838

Seafoam #50E3C2

Lapis #007EEA

Royal #7E5CEF

Polar #F4F7FA

Ash #98A2A7

Soot #6B757B

Sunset #FF6C29 Dollabillz #43AB3C

28 of 45

Keep in mind, Change is scary - losing money is scary

  • WordPress is supported by an ecosystem of over $10B/year*
  • People depend on this software to survive (I certainly do)
  • Respect feedback that comes from a place of emotion.

*source: Matt Mullenweg’s annual State of the Word

AGENDA

Tiffany #0ECAD4

Mirage #002838

Seafoam #50E3C2

Lapis #007EEA

Royal #7E5CEF

Polar #F4F7FA

Ash #98A2A7

Soot #6B757B

Sunset #FF6C29 Dollabillz #43AB3C

29 of 45

Keep communication positive

  • This seems like a no brainer, but pay special attention to what you post. Read it from the lens of someone on the other side of your change.
  • Setting the tone goes a long way.
  • Negativity may snowball but positivity does also

AGENDA

Tiffany #0ECAD4

Mirage #002838

Seafoam #50E3C2

Lapis #007EEA

Royal #7E5CEF

Polar #F4F7FA

Ash #98A2A7

Soot #6B757B

Sunset #FF6C29 Dollabillz #43AB3C

30 of 45

Never skip a weekly meeting

  • This will discourage new users from participating or feeling welcome.
  • A regular cadence will make folks feel confident in their ability to participate

AGENDA

Tiffany #0ECAD4

Mirage #002838

Seafoam #50E3C2

Lapis #007EEA

Royal #7E5CEF

Polar #F4F7FA

Ash #98A2A7

Soot #6B757B

Sunset #FF6C29 Dollabillz #43AB3C

31 of 45

Have a Handbook or Wiki for

your change

A detailed resource where you can find:

  • API info
  • Design / Code Methodology
  • Component Packages
  • Internal Packages
  • etc.

https://litturl.co/gbhandbook

AGENDA

Tiffany #0ECAD4

Mirage #002838

Seafoam #50E3C2

Lapis #007EEA

Royal #7E5CEF

Polar #F4F7FA

Ash #98A2A7

Soot #6B757B

Sunset #FF6C29 Dollabillz #43AB3C

32 of 45

4.9.9 pre release Modal - onboard early!

AGENDA

Tiffany #0ECAD4

Mirage #002838

Seafoam #50E3C2

Lapis #007EEA

Royal #7E5CEF

Polar #F4F7FA

Ash #98A2A7

Soot #6B757B

Sunset #FF6C29 Dollabillz #43AB3C

33 of 45

What’s the risk of change?

What didn’t go well?

AGENDA

Tiffany #0ECAD4

Mirage #002838

Seafoam #50E3C2

Lapis #007EEA

Royal #7E5CEF

Polar #F4F7FA

Ash #98A2A7

Soot #6B757B

Sunset #FF6C29 Dollabillz #43AB3C

34 of 45

Fear and Uncertainty

  • There will be lots of it.
  • Many early impressions snowballed out of control long after bugs were resolved.
    • This is where communication is key. OVER-COMMUNICATE CHANGES. Make a blog post about any bug that causes user frustration. Tweet that out. Make it known!
  • Much of the uncertainty was centered around timeline and breaking changes.
    • Have concrete dates. The moment that changes, over communicate

AGENDA

Tiffany #0ECAD4

Mirage #002838

Seafoam #50E3C2

Lapis #007EEA

Royal #7E5CEF

Polar #F4F7FA

Ash #98A2A7

Soot #6B757B

Sunset #FF6C29 Dollabillz #43AB3C

35 of 45

Forks may happen

  • Welcome them.
  • WordPress itself is a fork of b2
  • WordPress is GPL and forks must be also.
  • They may find interesting features to bring back into your project.

AGENDA

Tiffany #0ECAD4

Mirage #002838

Seafoam #50E3C2

Lapis #007EEA

Royal #7E5CEF

Polar #F4F7FA

Ash #98A2A7

Soot #6B757B

Sunset #FF6C29 Dollabillz #43AB3C

36 of 45

More awareness on accessibility is a must...we fell short, but improved quickly

  • Do not neglect your users.
  • Keep accessibility top of mind in every decision you make

AGENDA

Tiffany #0ECAD4

Mirage #002838

Seafoam #50E3C2

Lapis #007EEA

Royal #7E5CEF

Polar #F4F7FA

Ash #98A2A7

Soot #6B757B

Sunset #FF6C29 Dollabillz #43AB3C

37 of 45

Code of Conduct

  • While respecting those that come from a place of emotion is a great first step, sometimes people go too far. Be sure to uphold your code of conduct. If you don’t have one, now is a great time to establish one!

https://opensource.guide/code-of-conduct/

AGENDA

Tiffany #0ECAD4

Mirage #002838

Seafoam #50E3C2

Lapis #007EEA

Royal #7E5CEF

Polar #F4F7FA

Ash #98A2A7

Soot #6B757B

Sunset #FF6C29 Dollabillz #43AB3C

38 of 45

Clear timelines and roadmaps are a must

  • The Gutenberg merge date moved around often in the development of 5.0
  • Be concrete with dates, but if you must change a milestone date, make sure it is known as soon as it is a risk.
  • When you change the date, post about it, share to all leads in your project. Have them communicate throughout your teams.

AGENDA

Tiffany #0ECAD4

Mirage #002838

Seafoam #50E3C2

Lapis #007EEA

Royal #7E5CEF

Polar #F4F7FA

Ash #98A2A7

Soot #6B757B

Sunset #FF6C29 Dollabillz #43AB3C

39 of 45

Drupal is a shining example of the right way to do it!

Roadmap, proactive tools, and clear communication

  • Make sure breaking changes are communicated across every channel available
  • PHP analysis tool `drupal-check` for depreciated linting of PHP
  • “44% of the modules have no deprecation warnings. The remaining 56% of the modules need to be updated, but the majority have less than three deprecation warnings.”

AGENDA

Tiffany #0ECAD4

Mirage #002838

Seafoam #50E3C2

Lapis #007EEA

Royal #7E5CEF

Polar #F4F7FA

Ash #98A2A7

Soot #6B757B

Sunset #FF6C29 Dollabillz #43AB3C

40 of 45

6400 tickets built up because attention shifted

  • Triage is your best friend in the process of change. Try to keep your volume managed and set clear expectations in issues/tickets on when these new features or bugs will be addressed. Sometimes you’ll need to move initiatives out of the scope of the release. That’s okay, just communicate why.

AGENDA

Tiffany #0ECAD4

Mirage #002838

Seafoam #50E3C2

Lapis #007EEA

Royal #7E5CEF

Polar #F4F7FA

Ash #98A2A7

Soot #6B757B

Sunset #FF6C29 Dollabillz #43AB3C

41 of 45

Define “We” every time you use it.

  • If you ever use the word “we” take a step back and ask yourself who “we” is. Ask yourself if it’s clear to someone new to the project.
  • Adjust your we and define who that is. Are you the design team? Your we is very different from the accessibility team’s “we”
  • Unless you are speaking for the project officially at an agreement across all stakeholders, avoid the word

AGENDA

Tiffany #0ECAD4

Mirage #002838

Seafoam #50E3C2

Lapis #007EEA

Royal #7E5CEF

Polar #F4F7FA

Ash #98A2A7

Soot #6B757B

Sunset #FF6C29 Dollabillz #43AB3C

42 of 45

Decide Where and When a decision is being made

  • Have a decision maker or someone with the familiarity and authority to make a call on pending issues.
  • Make sure they are in every chat where a decision is made.

AGENDA

Tiffany #0ECAD4

Mirage #002838

Seafoam #50E3C2

Lapis #007EEA

Royal #7E5CEF

Polar #F4F7FA

Ash #98A2A7

Soot #6B757B

Sunset #FF6C29 Dollabillz #43AB3C

43 of 45

Dev chat is not where decisions are made

  • Make a post. Ask for feedback.
  • Avoid making decisions in a dev chat unless that is the sole purpose of that chat.
  • Things will get out of control QUICKLY if you make decisions in a real time chat

AGENDA

Tiffany #0ECAD4

Mirage #002838

Seafoam #50E3C2

Lapis #007EEA

Royal #7E5CEF

Polar #F4F7FA

Ash #98A2A7

Soot #6B757B

Sunset #FF6C29 Dollabillz #43AB3C

44 of 45

Get involved in WordPress!

  • make.wordpress.org

AGENDA

Tiffany #0ECAD4

Mirage #002838

Seafoam #50E3C2

Lapis #007EEA

Royal #7E5CEF

Polar #F4F7FA

Ash #98A2A7

Soot #6B757B

Sunset #FF6C29 Dollabillz #43AB3C

45 of 45

Thank you.

Anthony Burchell - @antpb

Antpb.com/slides

CLOSING 4

Tiffany #0ECAD4

Mirage #002838

Seafoam #50E3C2

Lapis #007EEA

Royal #7E5CEF

Polar #F4F7FA

Ash #98A2A7

Soot #6B757B

Sunset #FF6C29 Dollabillz #43AB3C