State of the Word 2015: JavaScript and API-driven Interfaces Are the Future of WordPress

stateoftheword2015

The inaugural WordCamp US was held this weekend at the Pennsylvania Convention Center in the heart of Philadelphia, one of America’s oldest cities. Roughly 1,800 WordPress enthusiasts came from all corners of the world to attend the event.

Ambling down Philly’s historic streets, lined with Benjamin Franklin monuments, one cannot help but consider how far publishing has come since the days when each letter was laboriously placed to form documents with copies cranked out one at a time.

Francis Bacon equated the power of the pen to that of gunpowder when he identified printing as one of three inventions that changed the world – “so much that no empire, no sect, no star seems to have exerted greater power and influence in human affairs.”

WordPress has played a major part in making publishing available to everyone in the digital age, an important reason why the project’s influence continues to grow more than a decade later.

Matt Mullenweg delivered his 10th annual State of the Word address to the largest WordCamp crowd to date. In reviewing stats from 2015 he highlighted the fact that WordPress now powers 25% of the web.

“This is a not a chance to rest on our laurels,” he said. “It’s a demonstration that the world wants a free, open source solution for the web.

Mullenweg shared 2015 stats that show the community behind WordPress is growing in tandem with its global usage:

  • 89 WordCamps with 21,000 attendees across 34 countries
  • 601 unique organizers, 60% for the first time
  • 1.6K speakers presented 2.1K sessions
  • 40,000 people attended 2,000 meetups in the past year

He also highlighted WordPress’ major improvements and milestones:

  • Moved from downloads to activity-based metrics in the theme and plugin directories
  • Adopted Slack – over 2 million messages sent out in 2015, WP is one of the largest Slack instances in the world
  • WordPress.tv code is now open source
  • Localized plugin and theme directories
  • All themes and plugins now support language packs
  • The plugin directory crossed 1 billion downloads
  • Twenty Fifteen theme is the most popular WordPress theme in history: 1.6 million active sites
  • 205 accessibility tickets completed, an 80% increase from last year
  • WordPress had three major releases: 4.1, 4.2, and 4.3.

Mullenweg invited Scott Taylor, WordPress 4.4 release lead, to give a brief overview of what’s coming when the release ships Tuesday, December 8th. This historic release adds the scaffolding of the new WP REST API. It also includes the Twenty Sixteen default theme, responsive images, term meta, and oEmbed for WordPress content.

“When WordPress adopts modern technologies, the internet adopts modern technologies,” Taylor said. He praised the efforts of more than 400 contributors who made 4.4 possible.

Mullenweg also announced release leads for 2016:

JavaScript Interfaces and PHP APIs are the Future of WordPress

Mullenweg’s address focused heavily on the the opportunities that the WP REST API is opening up for JavaScript-powered applications to run on top of WordPress. He highlighted four examples, including Microsoft Dynamics AX, Nomadbase.io, StoryCorps, and WordPress.com’s new architecture codenamed Calypso.

“They say that the best way to predict the future is to create it,” he said. This was the motivation behind the Calypso project, which answers the question: “What would it look like if we designed WP admin completely from scratch?”

Calypso is 100% JavaScript leveraging React, a totally new technology stack for Mullenweg’s collection of world class PHP-only developers. They all learned JavaScript in order to create a completely new approach to architecting WordPress.com.

I believe quite strongly that JavaScript and API-driven interfaces are the future of not just WordPress but the web,” Mullenweg said. “Perhaps there could be a future where there might be something on the other side that is worth breaking backwards compatibility for.”

Despite this new push for JavaScript, Mullenweg emphasized that PHP is not going away. “So much of the success of WordPress is due to the technologies it was built on,” he said.

While new versions of PHP historically haven’t provided compelling reasons for people to upgrade, Mullenweg said that PHP7 changes all of that since it’s twice as fast as its predecessors. This means that a good chunk of the web will soon be doubling in speed.

WordPress as an Advocate of the Open Web

Mullenweg reaffirmed his strong belief in an open web during his address. As WordPress becomes more JavaScript and API-driven, the platform is better positioned to be a strong advocate of open web principles in terms of publishing access and formats, freedoms, interoperability of open APIs, and device access.

“In some ways we are at a nadir of the open web,” Mullenweg said, noting that big players like Twitter have APIs that are getting more closed off. WordPress stands as a beacon in a sea of threats to digital freedom with its commitment to open APIs that work together.

“An API is the key of an open web,” he said. “WordPress can and will reverse the trend of closed APIs. We’re one of the few platforms out there where it can be open in every layer of the stack.”

What’s Ahead for WordPress in 2016?

WordPress.org contributors will continue working on getting the top plugins and themes available in every language, which Mullenweg considers to be an “incredible opportunity to democratize the web.”

He also noted that WordPress is still weak on customization. The project will need all hands on deck to move this feature forward in 2016.

Customization is the single biggest opportunity for improving the WordPress experience,” he said.

Mullenweg encouraged plugin developers to consider building JavaScript powered interfaces moving forward. In fact, he gave a homework assignment to all in attendance: “Learn JavaScript, deeply.”

He emphasized that JavaScript is not only the future of WordPress but it’s also the future of the web. “It’s what’s going to allow WordPress to thrive for the next 13 years,” he said.

Mullenweg said that he hopes WordPress developers will be inspired to become world-class JavaScript developers comparable to those in any other JS-powered open source project. A year of learning is ahead. Many developers will become reacquainted with what it feels like to be a beginner, including Mullenweg himself who pledged to contribute a JavaScript patch to core in 2016.

“When WordPress launched, the biggest criticism is that the world already had too many blogging systems,” Mullenweg said. But the world didn’t yet have a blogging platform with the same philosophical underpinnings that early WordPress contributors embraced.

A commitment to freedom and openness is WordPress’ true north, and it’s the reason the platform continues to dominate in 2015. Throughout its evolution as a blogging system to a full CMS, and now an application platform, WordPress continues to evolve towards being more open.

“I think we can use this opening up, API-driven development to actually open up more of the web,” Mullenweg said. “We have a very exciting year ahead of us making the web a more open place.”

37 Comments


  1. Great post! Thanks for this. So, where do we start learning javascript?

    What is your BEST tutorial related to WordPress? Please share! Thanks

    Report


      1. Much appreciated :) Looking forward to them

        Report


      2. Please post about API too. I try to keep up with such things but I’m self taught on everything to do with computers so various things tend to fall through the cracks. I thought API was basically communication between two different web services but seems there is more to it. (Or will be more to it). How does REST fit in with this?

        I do know a little Javascript from the days of IRC. lol

        Report


    1. My question exactly! What should I be learning… JavaScript, Advanced JS, REACT, and ?

      Report


      1. It would be better if WordPress.com team explains why they chose React for the Calypso project. It’s not just about Javascript in general, but choosing a Javascript framework can be a big decision which can drive the community in another way. Love to hear the opinions on that.

        Report


      2. Buzztone links to an excellent post that explains why. Also keep a look out on WordPress.TV as two team members from Automattic gave a presentation at WordCamp US on why they chose React for Calypso.

        Report


      3. You should learn pure JavaScript before you dive into any of the libraries that exist. By learning JavaScript, you’ll understand the foundation and principles of the language instead of limiting yourself to the opinions of a small library.

        Report


      4. I’ve been working a lot over the last few months with the type of stack Calypso uses. The learning curve is admittedly steep, and I would focus on learning:

        * ES6 (aka ECMAScript 2015) – a lot of React / JS devs are writing everything in ES6 now, and with good reason as there are some syntax constructs which dramatically simplify this type of development. Arrow functions, imports and destructuring assignments in particular make working with React a whole lot easier. This is a good overview: https://github.com/lukehoban/es6features

        * Node / CommonJS – You’ll need to be familiar with CommonJS module syntax and how this works alongside Node and NPM.

        * Webpack (!!!) – the build tool of choice for the React / Module stack. Webpack is a little bit like Grunt and Gulp, and a bit more like Browserify. It’s purpose is to bundle up all of the code in your headless JS app into one or more production files, so that you don’t need to manually include your dependencies. This goes beyond just JavaScript though: Webpack has the concept of “loaders” which allow you to “require” things like images and CSS files directly in your JavaScript, and those will be included inside the production bundle as well, via data URLs (for images) or inline stylesheets (for CSS/SASS/LESS etc). There is also a Babel loader which transpiles ES6 and React JSX into browser compatible JavaScript. Webpack is tricky to learn but it is an absolutely amazing technology, and I think it’s a critical part of this future of web dev which Matt is talking about.

        * Flux (or Redux): You’ll need to know a bit about the Flux pattern created by Facebook, which enforces unidirectional data flow throughout an app. The current Flux implementation of choice is “Redux”, which has gained rapid momentum because it implements just the right parts of Flux, and can allow amazing things like hot reloading, where you can change components in your app, which is immediately seen by the browser without refresh. Flux / Redux is quite tricky to learn too, as the pattern is really quite different from monolithic PHP apps or even MVC-JS apps. Calypso doesn’t appear to use Redux, probably because Redux was created well after they started Calypso.

        * Bonus: PostCSS (https://github.com/postcss/postcss). The new take on LESS and SASS, which can work in tandem with webpack to allow you to work with custom or future-spec CSS rules, which are then transpiled into compatible CSS. This is really cool as it’s not monolithic like LESS/SASS, and you can pick as many PostCSS plugins as you like to enhance the capabilities of CSS. For example, if you want to implement a “clearfix”, you can add the postcss-clearfix plugin, and then use just “clear: fix” as a rule in your stylesheets, which is compiled down to the standard “:after” syntax.

        So, ahem, there’s a lot to learn here, but it’s a very cool stack, and does really feel like the future of web apps to me too :)

        Report


      5. Great overview!

        It’s worth checking out SystemJS & JSPM for bundling and script loading as well because it comes with some benefits if you’re bridging old-hat WordPress code with new-hat code. It supports all the common import/require/dependency loading approaches while also allowing you to import in a futureproof way using the new import spec. You can also use it load any kind of asset, stylesheets etc.

        Report


  2. I guess for of us not fluent in Javascript, we will be on the outside looking in, demoted to mere users. Seems to be a step towards making WP harder to modify and maintain yourself.

    On the plus side, this is certainly a boon for developers who are fluent in Java. It may drive the “pay for help” market even harder.

    Report


    1. Just to clarify, Mr. Mullenweg made the point to learn JavaScript, not Java. There’s a big difference! Also, it seemed to to make a lot of sense that as long as developers are making more integrations and new user interfaces using JavaScript, it will actually make “mere users” more able to modify and maintain WordPress themselves, not the other way around.

      Report


      1. Seems ironic to me. There were thousands of Javascript gadgets and tools but they began disappearing as PHP grew. Now Javascript is set to make a come back? What next… virtual pets and web rings?

        What did happen with the Javascript or maybe it was Java which was supposed to be having malware issues in the updates for web browsers? Likely a couple of years ago now but doesn’t seem that long ago.

        I like the retro Internet so the return of Javascript is like having an old friend visit.

        Report


      2. JavaScript is not making a return. It has been part of the web for decades, and even today WordPress contains thousands of lines of JavaScript.
        Browsers have built-in interpreters so websites can run JavaScript.

        On the other hand, there are browser plugins so you can run Java Applets, and yes, there have been security issues with this.
        Java itself can be used to create dynamic websites just like PHP.

        Report


    2. @alex – JavaScript is not Java – they are two completely different programming languages.

      JavaScript is the stuff browsers use to make things hide and show on screen, it typically powers the majority of all online slideshows, and JavaScript allows WordPress to do the nifty drag and drop functionality with media uploads among other useful user experience enhancements. In other words, its a fast scripting language for browsers to use to provide interactivity.

      Java is a completely different beast and is used primarily for enterprise development when you need an application to work with many different enterprise systems and work across a wide variety of operating systems. It’s not really web/browser focused per se.

      Report


    3. Java and JavaScript are two totally different things. Let’s not mistake the two. Even Matt said on stage that if you start learning Java, you’ll be going in an opposite direction of WordPress.

      Report


    4. “Seems to be a step towards making WP harder to modify and maintain yourself.”

      JavaScript is probably one of the easiest languages to pick up quickly. If anything, this is a huge step in making WordPress more usable for millions of developers.

      Report


      1. JavaScript is probably one of the easiest languages to pick up quickly.

        Agreed.

        If anything, this is a huge step in making WordPress more usable for millions of developers.

        Not so sure about this, though. That might be true in the short term. But in the medium and longer tern, surely it opens up another possibility.

        If this pushes more and more developers to learn javascript, is it inevitable that they will continue to want to work with WordPress? Isn’t it at least as likely that they will find that WP is an old-fashioned beast, and that javascript development is better integrated with, or bound to, something else instead?

        I am not saying that I know what that “something else” might be. It’s very hard to predict the future. But I can’t help thinking that those proclaiming with such certainty that this is good news for WordPress might be 100% mistaken. Of course, it might still be good for the web and for users. But it might well lead to the development of alternatives to WP that usurp its current dominant position.

        Report


      2. Javascript is definitely not an easy language to pick up, it has plenty of surprising qualities that won’t be obvious to new learners and there are many design patterns that can confuse people. Closures for example routinely mystify devs who’ve been at it for a while. PHP by comparison is much easier. I would say Javascript is the funnest though, especially now that it can be applied almost everywhere.

        Report


      3. I’m sorry I have to disagree but Javascript is definitely NOT an easy language to learn. It may seem easy on the surface but if you want to become proficient there are a lot of of little things that you will grasp only with a lot of experience

        Report


  3. I’m glad Matt finally agreed to what John O Nolan and the rest of the web has known for years. I wish, however, he’d be so bold as to lay out specific plans for WordPress and explain any actual strategies that may be in place. Like, what happens in 13 years? How does he plan on growing market share so aggressively, as he’s been stating for so long? What’s with the love affair with PHP? If I were a shareholder, and this was our annual shareholder meeting, I would be leaving a little worried and with more questions that when I arrived. (Luckily its nothing of the sort.)

    Report


    1. Yes, I don’t know why people seem to ignore/forget the fact that Calypso is a slap in the face of Ghost.

      Report


      1. How is it a slap in the face? If anything, it validates the direction and decision John O’ Nolan took with Ghost. Even John recognizes this.

        http://john.onolan.org/calypso/

        Now that the world’s largest Content Management System is going in the same direction, there could be no better validation that decision we made 3 years ago was the correct one. We’ve fucked up a lot of things since Ghost started, and we’ve learned from all of them, but I’m very pleased we got this one right.

        Overall this move is huge, both for the WordPress ecosystem, as well as open source as a whole.

        Report


      2. I’m also curious to know how you arrive at the slap in the face of Ghost idea…? The entire web has been moving toward a javascript-centric future well before Ghost was even thought up.

        Report


    2. I’d like to hear from anyone who knows what the web is going to be like five years from now and get it right let alone 13 years. As for market share or reach, Jetpack is going to play a large role.

      But what I think will play an even larger role is the translations of major plugins into many different languages. Matt said on stage that a lot people who use WordPress in a different language do so without the ability to use plugins, since most are not translated.

      “JavaScript Interfaces and PHP APIs are the Future of WordPress” how much more specific do you want Matt to be? If you were a shareholder, most of what you heard about the future of the self-hosted WordPress project that is open source would be of no concern to you as you wouldn’t have any financial investment in it.

      Report


      1. Quote 1: “As for market share or reach, Jetpack is going to play a large role.”

        Quote 2: “JavaScript Interfaces and PHP APIs are the Future of WordPress.”

        I can’t help feeling that, if one of those statements turns out to be right, then the other won’t be.

        Report


    3. Every user is a stakeholder:) I’m pretty stoked with the focus on the open API and translations, this will only help WordPress continue its dominance as the most attractive platform to work with. As for projecting a 13 year vision, not sure its even possible to do that with much detail given how fast everything changes.

      Report


  4. I believe quite strongly that JavaScript and API-driven interfaces are the future of not just WordPress but the web

    I beg to differ. First of all, the JS web framework landscape is horribly fragmented and volatile. Many frameworks have the life span of a fruit fly. Angular 1 was superseded by Angular 2 which was then upended by React. Who knows what will happen in the next few years? I don’t see a “standard” framework emerging any time soon.

    Users suffer from “choice paralysis.” Angular, React, Ember, Meteor, Backbone, Knockout, Polymer, Mithril, Aurelia, etc., etc., etc. Good Grief, are you kidding me?!!

    This amusing graphic underscores the situation.

    Second, JavaScript itself is a highly dysfunctional language. It will eventually be eclipsed by some other language (or languages) once WebAssembly finally arrives. In the meantime, there’s a whole world of choice in transpiled languages.

    Recently, we learned that JavaScript may be the most complex programming language in use today.

    Presently, I’m trying to get ECMA to fix this awful language.

    Report


  5. “They say that the best way to predict the future is to create it,” Mullenweg said.

    It was Alan kay, the father of Smalltalk and a great visionary, who first said it.

    Report

Comments are closed.