Matt Mullenweg: Users Should Never Know WordPress Has Updated

| WordPress News

Matt MullenwegMatt Mullenweg, the co-founder of WordPress, gave one of the keynote addresses at this year's Joomla World Conference.

Of course, it was interesting that the JWC invited Matt and that he accepted. 

Equally interesting was that he used the keynote to talk about several issues that were news even to WordPress junkies. For example, he mentioned that WordPress 3.8 would ship on its intended release date of December 12th. With previous versions, WordPress release dates have been much more flexible.

However, despite all of the people in the audience and watching on the livestream, perhaps the most revolutionary idea has been missed.

Matt presented a very clear vision in which WordPress runs like a software-as-a-service product. His vision is that WordPress, and all themes and plugins, should update silently and almost constantly.

If this vision comes true, users will never need to know when there's an update and developers can push code every hour if they want to.

Matt's vision for constant, silent updates

Here's the text of what Matt said. He had been talking about the history of WordPress and had just arrived at version 3.7, released in October:

"A big thing that came out in 3.7 was auto-updates.

So now WordPress core, when 3.7.1 came out with bug-fixes, all the WordPresses that were able to, updated themselves and people just got an email that their site had been updated.

We had a 99.997% success rate so only a couple of hundred sites failed and within those the system is very … Grab Andy (Andrew Nacin, WordPress code developer, sitting in the audience) and he’ll talk your ear off about all the millions of contortions it goes through to work across the heterogeneous host: Windows, Linux, different file permissions, things that can happen, checking the integrity of the files over the wire. There’s a gajillion things that go to this happening and we’re doing this for core now.

The vision is that in the future we’ll do it for plugins, we’ll do it for themes, we’ll do it for major releases  as well as minor releases.

So let’s say that you load up Facebook today,

What version of Facebook are you running?

Even on your computer, what version of Chrome are you running? You can go and look - it’s like version 33 or something like that - but you don’t, you’re just using Chrome that day. And that’s eventually how I’d like WordPress to work, where you just open up WordPress and get that day’s version of WordPress.

On we push code live to the site, to deploy to thousands of servers over 100 times per day. As a developer that is addictive. It’s like crack hits. It’s amazing how great it is to be able to iterate and ship things fast and see how people use things and move quickly.

I think this is how modern software development can and should work and so shifting our open source project to be like that, meaning that we can iterate just as quickly as our proprietary competitors I think is key to WordPress remaining competitive over the next 10 years."

This vision, if achieved, would truly revolutionize how open source software development is done. It would mean the end of any notion of a release cycle as we know it today.

Also, although Matt doesn't mention it, such a move could radically improve the security of WordPress. 3 weeks after the release of 3.7, only 8% of all WordPress sites have updated (link). At the moment so many sites update so slowly that together they present a serious hacking risk.

This section where Matt outlines his vision runs for about 2 minutes from 39:00 to 41:00:

What are your thoughts?

Should open source projects run with silent, background updates?

Is this an essential feature to allow open source to compete or is it a recipe for disaster?

If you develop themes or plugins, would you want to update them automatically?

Let us know in the comments below ...


About the author

Steve is the founder of OSTraining. Originally from the UK, he now lives in Sarasota in the USA. Steve's work straddles the line between teaching and web development.