Gutenberg, Forks, and the need for an LTS version of WordPress

Over the past week, developments which I predicted back in December last year have come to fore, and I am deeply concerned about the effects they will have on WordPress (the application) and the community unless we take decisive action.

Short version: For various reasons, many WordPress users will be faced with a complex dilemma when 5.0 and Gutenberg comes out:

a) Get the latest version of WordPress and risk compatibility issues / costly retraining, redesign, or entire rebuilds, and/or other problems, or b) choose not to upgrade and end up running an old and eventually insecure version of the content management system.

So far, the response from WordPress leadership has been to install the “Classic Editor” plugin which as the name suggests reintroduces the classic WYSIWYG editor once the Gutenberg Block Editor becomes the default. This is, in my opinion, a dangerous road to go down both for the end-user and WordPress itself. 

Classic Editor as a permanent solution won’t work

Classic Editor is a bit like using a band-aid to plug a hole in a ballon as you are inflating it. It may work right now, but as the balloon continues to grow, the band-aid not only won’t do its job, it will actively harm the balloon itself. Here’s why:

Gutenberg as an editor replacement is just the first step for the WordPress Next project. The next step for Gutenberg is to migrate to the Customizer, at which point blocks move out of the editor and into other interfaces and displayed spaces in WordPress. Which means the Classic Editor can’t do its job and another patch plugin needs to be introduced.

It does not require a lot of imagination to see how this solution is not scaleable.

On top of this comes the issue of plugin and theme developers having to serve up solutions that work both for Gutenberg and non-Gutenberg installs which dramatically increases complication, cost, and management. And the “this plugin only works with Gutenberg” path flies in the face of the deeply held WordPress ideology of everything working for everyone and breaks the reasonable expectations of end-users. 

From my perspective (you are free to disagree – please leave your own opinion in the comments below) the Classic Editor plugin was a misstep and should be abandoned for a more robust solution, A Long-Term Support version of WordPress 4.9.x (link to Trac ticket):

WordPress LTS

On the release of 5.0, give site owners the option of “freezing” their install at 4.9.x by choosing to stay with a terminated LTS (Long-Term Support) branch which only receives security and maintenance updates, and only for a specified number of years.

Practical implementation

When 5.0 ships, site owners are presented with a panel similar to the mockup added below where they can choose to upgrade to 5.0 or stay with the LTS version. Information about each choice and what that entails is provided in links in the panel.

Proposed modal window offering upgrade to WordPress 5.0 or off-ramp to LTS version.

Users who choose the LTS version are given two options in the Updates panel: “Update WordPress LTS” (security updates only) or “Upgrade to 5.0“.

Why this is necessary

While the majority of WordPress users will weather the 5.0 upgrade without issues, a not insignificant group will run into issues which may end up requiring a significant investment in time or money or both which they are not able to take on at this time. Providing a clean off-ramp allowing them the time and space to prepare for the upgrade or otherwise resolve their unique challenges is essential to avoid harm to the end-user.

Additionally, offering a LTS version provides a relatively uncomplicated solution to the problem of backwards compatibility faced by many plugin developers.  As I mentioned earlier, the popularity of the Classic Editor plugin means plugin developers have to either ship two versions of their plugins (Gutenberg and Classic) or ship a larger plugin with both options built in. An LTS version of WordPress would mean these developers could offer a similar LTS version of their plugin as it was when 4.9.x was released, and continue development on their 5.x support plugin as normal.

This will split the community

A public LTS version of WordPress will split the community between those who upgrade to 5.0 and those who stay on LTS. This is neither new nor is it unusual. There are countless WordPress sites out there intentionally or unintentionally running older versions already, and within the community there is talk of launching an official fork of WordPress which would see a true split.

An LTS version is the lesser of all evils in this situation in my opinion. It is an unavoidable fact that some users will choose to not upgrade to 5.0. How this issue is addressed will impact the development of the application, its community, and its users long term. Offering a Long-Term Support version, and making each user who considers it aware of what this means, falls squarely under the open source philosophy and the WordPress philosophy of democratizing publishing. Granting users agency and the capability to choose solutions that work for them is a key ingredient to keeping the open web alive. That’s what we all strive for. 

LTS is what WordPress already does

WordPress has a long shipped security updates for older versions for an extended period of time, so technically this is no different from what is already happening. My proposal is to make this an explicit feature of the WordPress 5.0 release by giving each site owner the ability to opt out of the 5.0 upgrade until they are ready by activating a “WordPress LTS” release.

On a personal note…

This proposal might seem controversial, or inflammatory, or playing into the #WPDrama or #GutenDrama or #GutenSpiracy or whatever. It really is not. All I’m proposing here is to take something we already do – offering LTS versions of every version of WordPress – and make it a feature rather than something which happens behind the scenes. It changes nothing about how Gutenberg works or how it is implemented, and changes nothing about how we work. Only two minor things are different:

  1. Every WordPress site owner is offered an explicit choice to upgrade to 5.0 or stay with LTS for however long they want (within the clearly defined support timeline)
  2. The Classic Editor plugin is deprecated as a solution to Gutenberg upgrade woes.

That’s my take. Now I want to know what you think. Leave a comment here, or share your thoughts with me on LinkedIn or Twitter

Oh, and this proposal is also a Trac ticket: #44851

2 thoughts on “Gutenberg, Forks, and the need for an LTS version of WordPress

  1. Hi Morten!
    Great article and great idea, I completely agree with you.
    I’ve watched a lot of your Lynda.com courses, they were all awesome. Thank you for that!
    I wanted to watch “WordPress: Building themes from scratch using Underscores” next. But, will that course be “outdated” when Gutenberg is available?
    I really like Web development, but don’t you think that it is difficult to be always “on date”?
    What will your next Lynda.com course be about? I’m looking forward to it!
    Thank you for everything!!

    Lucas

  2. Hi Morten,
    Very good post! I’m a big fan of the ClassicPress fork. I fully intend to support and use it, even to the extent of migrating our own in-house sites over. I’m actually excited about it. I feel it brings back the wordpress.org community, a community that was forgotten and railroaded with the introduction of Gutenberg.
    While having Automattic fork WordPress would have been ideal initially, I don’t think it is anymore. The response from moderators to the Gutenberg one-star reviews clearly showed they don’t respect or perhaps even understand why people would not want Gutenberg. I would be nervous about Automattic forking WordPress after all of this – I simply have lost my trust and confidence they have the interest of regular WordPress users at heart. They didn’t listen to us originally, why would they now?
    I understand why people do like Gutenberg and the new editor concept, I think its a good idea in its own right, and I wish the developers well with it. But its hardly even Beta at this point, and not for everyone. And the Classic Editor plugin will never be a long term solution, it simply can’t be as you have also discussed.
    ClassicPress has that community feeling back, that we lost with the introduction of Gutenberg. That’s why I like it, and I like the idea of a WordPress without Gutenberg.
    The big Pandora’s box will be regular WordPress users – that will be the deciding factor if Gutenberg succeeds or not. As you have already mentioned, its not us in the vocal minority, its those people – the end users.

Comments are closed.