The nature of our business is change, and in our opinion we're on the cusp of another major change.
Update: Part of the team behind the WordPress REST API released a White Paper outlining much of what is said below.
The technology landscape is in constant motion, none more so than web technology: what is favored today can quickly become yesterday's legacy. In our capacity as developers, strategists and Virtual CTOs we keep vigilant for emerging technologies. We watch with intense interest for events which herald future technology directions, not only for services we initiate today, but for the environments in which they may have to operate years from now.
In our opinion, the average web technology project should achieve a minimum of 2 years viability, with an ideal lifespan of 3-5 years. With this in mind, you don't want to be the last company investing in a project built on yesterday's technology.
In their latest release, WordPress has initiated an approach that might signal a huge shift in the technology that powers much of the Internet.
Bellwether events in technologySomething we have found important to look for are those bellwether events when technologies combine and find mainstream adoption. These are easy to recognize in hindsight, yet not always so contemporaneously. They are often a collection of small incremental changes leading to a more significant event when they finally tie together.
The release of Calypso by Automattic (the company behind WordPress) has the potential to be another one of these events. There are reasons this event in particular stands out: The technologies chosen for implementation, the technological history of the company that chose them and the means of release.
So we asked ourselves a big question. What would we build if we were starting from scratch today, knowing all we've learned over the past 13 years of building WordPress? At the beginning of last year, we decided to start experimenting and see.
- Matt Mullenweg / CEO Automattic
PHP & WordPress, the core of the modern webThe PHP language was instrumental in creating the web as we know it today. Before PHP, CGI scripts and languages such as Perl were used to dynamically generate most of the web. Yet now usage of Perl as the server scripting language of choice has fallen below 1%.
Things that started with PHP and started small, like Facebook and WordPress, are giants today. They are still using this technology to power their infrastructure and there is a sense that the traditional use of PHP is holding them back. Facebook has PHP so entrenched that it is redeveloping elements of the PHP toolchain just to keep their massive infrastructure running. It is easier (but still hard) to improve the fundamental tools of PHP than try a wholesale replacement.
Difficult to verify statistics claim PHP powers a large portion of the web today and without a doubt much of that is is via WordPress. WordPress is believed to power something north of 25% of all websites. Much of the rebuttal to any negative outlook for PHP's future uses some version of this statistic. If you are looking at future trends in PHP you must also look at future trends with WordPress.
Facebook has an advantage that their infrastructure is private, how they upgrade it can be run by their own experts in-house. The problems for WordPress are trickier in that they have a large distributed installed userbase of varying technical know-how. Any updates they make must remain somewhat backward compatible for those users. Their challenge is significantly more difficult and how they navigate the necessary changes will be illuminating. What is their plan and how does it reflect on future web technology?
WordPress REST API, accessing the core through other languagesThe JSON REST API used in WordPress, currently as a plugin, is being integrated into WordPress core. This will open up a more of less standard interface to WordPress to be utilized by other languages and environments and provide for a more open access standard to core WordPress functionality. This is a vital element in the future direction of WordPress as it allows other systems to be integrated independent of implementation platform. No longer will PHP be an absolute requirement in solutions built around WordPress.
We are very close to the 2.0 release of the plugin (currently in beta). This will be the inclusion of the JSON REST API into WordPress core, slated to happen any day now. Soon PHP will no longer be a required language in order to influence core WordPress operations. This opens up the WordPress developer base to other implementation languages/environments and inversely brings other developers into the ecosystem.
The REST API release is an event leading to the ability to build applications against WordPress without PHP. The opportunity for more modern interfaces is here and already underway. The first major one is released and was developed by Automattic/WordPress themselves: Calypso.
- We can see it and how it works. It is open source, most other Node adoptions are made known via description only or as short glimpses of systems built and operating privately in corporate environments. Successful open source projects encourage other projects in the same technologies. There is a lack of examples of large multi-contributor open source Node applications. As one, the Calypso architecture may become a blueprint for other similar solutions.
- It is an alternative technology release from a company that is synonymous with and found great success in PHP. This will encourage other companies who may be entrenched with an older technology to also try an migration path with similar technologies.
This is an Automattic team throwing off some of its older paradigms and seeing what they can do with a more modern web development stack. The results are promising thus far.
Capitalizing on this technology shiftIf you are a general WordPress end user, it is a little early to start using these new technologies, they are still being fleshed out and you may expect some growing pains till they are stable. However, if you are a WordPress developer, or your WordPress infrastructure depends on a great degree of customization, you should be starting to look seriously at the REST API as an alternative means to achieve your goals.