Gutenberg is generating a lot of buzz in the WordPress community right now. If you’re paying any attention to WordPress you’ve probably heard it, and you’ve probably also heard how it is going to be the end of the world.
I remember a lot of hype about the year 2012. It was discovered that the Mayans had a long count calendar that ended in the year 2012. They even made a movie about the world ending, yet here we are over 5 years later.
The Mayans believed the world was cyclical and when the long count ended it started fresh. So the end was really the start of something new.
In the same way, Gutenberg is the end. It is the end of:
- The old visual editor
- Meta boxes to add content to the page
- Long, crowded page editors
- And several other things that have existed since WP 2.0
Those are not all bad things. However, it means that changes will have to be made in how we develop, how we design, and how we write, and change is scary.
The Visual Editor
At the State of the Word address in late 2017 Matt Mullenweg pointed out that when WordPress was first introduced, there was no visual editor. When it was added a lot of people really freaked out. Developers were worried it would be the end of the world.
It was.
Then the new world started. Developers started making a lot of amazing tools that used the new visual editor. They added buttons and expanded on it. They used it in different parts of the site to make it easier for content creators to make content anywhere.
The visual editor was a major change at the time that scared a lot of people. In the end, though, it ushered in a new era of WordPress adoption and innovation that helped define the last decade of not only WordPress development, but web development as a whole.
Gutenberg can be the catalyst that helps drive the next decade of creation and innovation.
But what about…?!?
You’ve probably heard about all the big problems that are going to happen. It will break existing sites. My favorite plugin won’t work with it. It will break backward compatibility. This theme won’t support it. I’ll be honest, those are valid concerns. But we’ve seen this before.
The big solve for that is the ability to turn Gutenberg off. At first I thought that was a terrible idea. As a developer I work hard to create a tool,and then someone breaks it by turning off a particular feature. Making it possible to turn off Gutenberg will just break the tools that I build, right?
But this is nothing new. Right now people can switch between the text editor and the visual editor. I’ve created tools that were intended to work with the visual editor and text editor switch. Then I discovered that my code broke when the user disabled the visual editor in the user setting.
When I discovered that my code broke in that circumstance I had to go back and modify it so that it could work in scenarios where the visual editor was enabled and the text tab was showed, where the visual editor was enabled and the visual tab was shown, and when the visual editor is disabled.
As a developer, imagine no longer needing custom post types for presentation hacks. Instead you can create custom templates that can be selected to generate the entire page structure with modifiable blocks.
With the introduction of Gutenberg, we will have to decide if we are going to support the visual editor, text editor, AND Gutenberg or if we will specialize to a more limited set. We will have to deal with plugins that do things wrong, and we will have to learn new skills.
In short, it’s brand new and something we’ve been doing all along.
Exciting New Possibilities with Gutenberg
I, for one, am really excited about Gutenberg. I was on the fence until I went to the Building with JavaScript in the Customizer presentation at WordCamp US by Weston Ruter and saw a vision for the future. In one slide he showed a mock-up for using Gutenberg with the Customizer. In that moment I saw the solution I’ve been looking for these past 5 years: a front end editor that allows modifying menus, widgets, design elements, and content all in one place.
Just for a moment imagine this is the reality: GutenBlocks interacting with Customizer blocks so the page can be modified and created in a single interface. Imagine a plugin or theme that allows you to modify menus, widgets, and sidebars on each post, page, category archive, … so that you can create the content you need for your site.
As a developer, imagine no longer needing custom post types for pages, posts, books, and other content, but instead having custom templates that can be selected to generate the entire page structure with modifiable blocks. Custom post types will still be useful, but Gutenberg adds new functionality that makes it easier to achieve custom layouts for different types of content without explicitly defining custom post types.
I see a world of possibilities that will make it easier for clients to focus on content without needing to access the wp-admin ever again. A world where developers like myself can simplify their code while expanding the functionality, and a world where my biggest dreams for how to build a WordPress site can finally come true.