Matias Ventura, the lead of the editor focus for WordPress, has written Gutenberg, or the Ship of Theseus to talk about how Gutenberg's approach will simplify many of the most complex parts of WordPress, building pages, and theme editing. If you want a peek at some of the things coming down the line with Gutenberg, including serverless WebRTC real-time co-editing.

Facebook Dropping Patent Clause

I am surprised and excited to see the news that Facebook is going to drop the patent clause that I wrote about last week. They’ve announced that with React 16 the license will just be regular MIT with no patent addition. I applaud Facebook for making this move, and I hope that patent clause use is re-examined across all their open source projects.

Our decision to move away from React, based on their previous stance, has sparked a lot of interesting discussions in the WordPress world. Particularly with Gutenberg there may be an approach that allows developers to write Gutenberg blocks (Gutenblocks) in the library of their choice including Preact, Polymer, or Vue, and now React could be an officially-supported option as well.

I want to say thank you to everyone who participated in the discussion thus far, I really appreciate it. The vigorous debate and discussion in the comments here and on Hacker News and Reddit was great for the passion people brought and the opportunity to learn about so many different points of view; it was even better that Facebook was listening.

On React and WordPress

Big companies like to bury unpleasant news on Fridays: A few weeks ago, Facebook announced they have decided to dig in on their patent clause addition to the React license, even after Apache had said it’s no longer allowed for Apache.org projects. In their words, removing the patent clause would "increase the amount of time and money we have to spend fighting meritless lawsuits."

I'm not judging Facebook or saying they're wrong, it's not my place. They have decided it's right for them — it's their work and they can decide to license it however they wish. I appreciate that they've made their intentions going forward clear.

A few years ago, Automattic used React as the basis for the ground-up rewrite of WordPress.com we called Calypso, I believe it's one of the larger React-based open source projects. As our general counsel wrote, we made the decision that we'd never run into the patent issue. That is still true today as it was then, and overall, we’ve been really happy with React. More recently, the WordPress community started to use React for Gutenberg, the largest core project we've taken on in many years. People's experience with React and the size of the React community —  including Calypso — was a factor in trying out React for Gutenberg, and that made React the new de facto standard for WordPress and the tens of thousands of plugins written for WordPress.

We had a many-thousand word announcement talking about how great React is and how we're officially adopting it for WordPress, and encouraging plugins to do the same. I’ve been sitting on that post, hoping that the patent issue would be resolved in a way we were comfortable passing down to our users.

That post won't be published, and instead I'm here to say that the Gutenberg team is going to take a step back and rewrite Gutenberg using a different library. It will likely delay Gutenberg at least a few weeks, and may push the release into next year.

Automattic will also use whatever we choose for Gutenberg to rewrite Calypso — that will take a lot longer, and Automattic still has no issue with the patents clause, but the long-term consistency with core is worth more than a short-term hit to Automattic’s business from a rewrite. Core WordPress updates go out to over a quarter of all websites, having them all inherit the patents clause isn’t something I’m comfortable with.

I think Facebook’s clause is actually clearer than many other approaches companies could take, and Facebook has been one of the better open source contributors out there. But we have a lot of problems to tackle, and convincing the world that Facebook’s patent clause is fine isn’t ours to take on. It’s their fight.

The decision on which library to use going forward will be another post; it’ll be primarily a technical decision. We’ll look for something with most of the benefits of React, but without the baggage of a patents clause that’s confusing and threatening to many people. Thank you to everyone who took time to share their thoughts and give feedback on these issues thus far — we're always listening.

We Called it Gutenberg for a Reason

Movable type was about books, but it wasn’t just about books. Ideas spread. Literacy spiked. The elite monopoly on education and government started to crack. Luther’s 95 Theses were printed on a press, rocking Europe, and he issued “broadsheets.” Broadsheets became newspapers; newspapers enabled democracy. The printing press ushered in social, political, and economic sea changes. Gutenberg changed everything.

WordPress has always been about websites, but it’s not just about websites. It’s about freedom, about possibility, and about carving out your own livelihood, whether it’s by making a living through your site or by working in the WordPress ecosystem itself. We’re democratizing publishing — and democratizing work — for everyone, regardless of language, ability, or economic wherewithal.

WordPress’s growth is impressive (28.5% and counting) but it’s not limitless — at least not in its current state. We have challenges (user frustrations with publishing and customizing, competition from site builders like Squarespace and Wix) and opportunities (the 157 million small businesses without sites, aka the next big market we should be serving). It’s time for WordPress’ next big thing, the thing that helps us deal with our challenges and opportunities. The thing that changes the world.

Gutenberg.

For those who don’t know we kicked off the Gutenberg project around the beginning of the year, I talked about it and we did our first public releases in June, and the team has been doing weekly updates of the public beta plugin that’s available for anyone to try out in their wp-admin.

When Johannes Gutenberg’s press came out, people mostly used it to print the same religious text monks had been copying. It wasn’t until ten or fifteen years later that people started innovating and trying their hands at new kinds of writing, and the wheels of change started to spin faster. Now it’s WordPress’ turn to do the same. Gutenberg meets our challenges and opportunities head on while simultaneously benefitting everyone who makes a living working in the WP ecosystem. It’s about a lot more than just blocks. Our Gutenberg moves every part of the WordPress ecosystem forward:

Developers and agencies will be able to create interactive templates that clients can easily update without breaking things or dealing with custom post types: Imagine a custom “employee” block that you can add to an About page that includes a picture, name, and bio. They’ll be able to replace most meta boxes, and they’ll get a chance to update old code or clients to work in this new paradigm.

Plugin developers will be able to completely integrate into every part of WordPress, including posts, pages, custom post types, and sidebars without having to hack TinyMCE or squeeze their entire feature behind a toolbar button. Today, every plugin that extends WordPress does it in a different way; Gutenberg’s blocks provide a single, easy-to-learn entry point for an incredible variety of extensions. Some folks have already begun to port their plugins over, and are finding that they’re easier to build and have a much improved UI. I’m looking forward to highlighting those stories as we get further along and more people write about them.

Theme developers won’t need to bundle tons of plugins or create their own page builders. There’ll be a standard, portable way to create rich layouts for posts and guide people through setup right in the interface, no 20-step tutorials or long videos needed. Every theme will be able to compete with multi-functional premium themes without locking users into a single theme or compromising their experience.

Core developers will be able to work in modern technologies and not worry about 15 years of backwards compatibility. We’ll be able to simplify how menus, widgets, and the editor work to use a common set of code and concepts. The interface will be instantly responsive.

Web hosts will have better signup rates, as Gutenberg opens up WordPress to an entirely new set of people for whom WordPress was too complex and hard to set up before. (Remember our goal: to democratize publishing.) Their churn rates will go down: they’ll stop bleeding customers to Wix, Weebly, and Squarespace, and fewer people will abandon their sites because it was too hard to make things look they way they wanted.

Users will finally be able to build the sites they see in their imaginations. They’ll be able to do things on mobile they’ve never been able to before. They’ll never have to see a shortcode again. Text pasted from Word will get cleaned up and converted to blocks automatically and instantly. (I pasted the first version of this post from Google Docs and it worked great. 👌) They’ll start manipulating their sites in ways that would have taken a developer. They’ll be able to move from blogging to using WordPress as a CMS without missing a beat. Editing posts will just work; they’ll write more. They’ll learn blocks once, and then be able to instantly use and understand 90%+ of plugins.

I could go on about how photographers will be able to create rich galleries, parallax images, and better portfolios, or how poets will finally be able to preserve whitespace as they write, but you get the idea. It’s big. It moves the WordPress ecosystem forward, but it also moves the whole web forward.

Which is scary! Because change always is, and this is a big one. But a scary thing is usually a thing that leads to growth, if you can push through it. Ten years ago, agencies and developers worried that software like WordPress would ruin their business because clients wouldn’t need help updating their sites any more, and would maybe even just start building their own sites. But their worse fears didn’t come true — instead, it created new opportunities for everyone.

(People were worried when the printing press was invented, too. A Swiss biologist warned against the “confusing and harmful abundance of books,” but I’d say it all worked out in the end.)

This is not to say that nothing will go sideways with Gutenberg, or that people’s concerns about it are unfounded. Making something people want is really hard to do and easy to mess up — we definitely have in the past. I share many of the concerns or worries with today’s version of Gutenberg, and we’re working to mitigate them. Gutenberg will ship with WordPress 5.0, but the release will come out when Gutenberg is ready, not vice versa. We still have target dates to help us think about scope and plan for all the supporting documentation, translation, and marketing efforts, but we’re not going to release anything until Gutenberg is something the team working on it agrees is ready.

And as we work, we’re listening: feedback on core and feature plugins gets read, heard, and considered. Every review of Gutenberg, even the rude ones, has a response. Seven months of vigorous and public debate, chats, tickets, and code changesets brought us to where we are today, and there will be  a fair amount more before we can present the Gutenberg vision in a mostly-complete state. I welcome it; apathy would worry me a lot more than disagreement or controversy.

Creating great software will never make every person happy. We’re not creating The Perfect Product, we’re choosing a path between many good options, weighing all of the inevitable trade-offs that come from a change, listening, shipping, and then doing it all over again. Iterating. My life’s work is improving WordPress. I firmly believe that Gutenberg is the direction that will provide the most benefit to the maximum number of people while being totally in line with core WordPress’s philosophies and commitment to user freedom. So keep giving us your feedback, and let’s push through the fear together. It’s worth a little discomfort to change the world.

Yes, it is a press, certainly, but a press from which shall flow in inexhaustible streams, the most abundant and most marvelous liquor that has ever flowed to relieve the thirst of men.

Johannes Gutenberg

Thank you to the WP Tavern conversation that helped me write down many of these ideas, and Michelle Weber. This post started in Google Docs then revised in Gutenberg 0.9.

Website as Resume

The illustrious Chance the Rapper was looking for a new intern.

Some people responded with regular resumes, replying as images, but Negele “Hopsey” Hospedales decided to make a website on WordPress.com:

The happy ending is written up in Billboard: he got the gig and went on tour with Chance. Hospey wrote a great article on it himself: How To Work For Your Favourite Rapper.

The company Bayer is famous for inventing aspirin in 1898, which is arguably one of the world’s most beloved brands, and for good reason. But I was surprised to learn that just two weeks earlier, the same three guys who gave the world aspirin also created Bayer’s other big brand, heroin, which was marketed for about eight years as the world’s best cough medicine.

From Andrew Essex on his book about the End of Advertising. Hat tip: John Maeda.