Calypso is the big news of the week and here are some random thoughts on it.
1. This is awesome
First and foremost, I am personally extremely excited about this. Not only because the new UI is really nice and pleasant to use but also because this finally shows the modern side of WordPress, or at least starts to. With VersionPress, if you abstract from all the technicalities and specific features, what we are trying to do is to modernize WordPress workflows, and I am always very pleased when I see a project in the same camp, be it this new UI, WP-CLI for a great scripted experience, roots.io always pushing for best practices, testing tools like WP_Mock and many other projects and initiatives. WordPress needs this and it's great to see such a huge contribution from Automattic.
Technically, I am also very happy that Automatticians chose React. There are a myriad of options available today but I personally believe that React is the best bet in the long term (well, you could probably guess that as we use React for our UI too 🙂).
2. But there's more to it
After the initial reaction, about a hundred of different thoughts went through my head. What does this really mean? How will this change WordPress, if at all? Here are some random, unsorted thoughts:
They've changed the development process from Trac to GitHub and from SVN to Git. It creates a tiny (tiny) chance that the core will follow one day and that would be extremely exciting for everyone who wants to contribute but is scared of patches and now-unfamiliar workflows. I know it's not very likely to happen, at least not soon, but we can hope, right? 🙂
Speaking of core development, I was kind of surprised that this is solely Automattic's effort. Sure it's a great piece of software but it confuses me that something so important for WordPress administration in general had zero (or close to that) discussions in the core WordPress Slack or in the broader WordPress community before it landed. Don't get me wrong, I am perfectly familiar with the advantages (and disadvantages too!) of doing something in-house and VersionPress is being developed like that too, but I always thought that Matt's perspective on this was different and he's always been an advocate of a true OSS development. It seems that Automattic intentionally avoided it this time. I'm not criticizing this decision, just pointing it out.
How the new admin UI fits the whole WordPress ecosystem is not very clear to me at this point. Because Automattic created it for .com in the first place, they coded it not against the “standard” WP REST API (which, arguably, is not entirely ready yet) but against their proprietary API. This should be harmonized one day, and I guess it will, or maybe there will be a fork of Calypso re-implemented to use the standard API when it's ready, but it will certainly for some time create the world of “two WordPresses” – one on .com and one on .org. I have strange feelings about this as the initial reaction but maybe it won't be of any concern at all.
This also possibly creates a gap between cutting edge JS frontend built on technologies that barely existed 2 years ago and a WordPress core codebase that was created 15 years ago and really feels that way. I understand why WordPress is like that and also why it's extremely difficult to do something about it but it looks like a true “WordPress developer” will now need to be familiar both with the “ugly” PHP code from two centuries ago (follow my hyperbole here please) and a bleeding edge JS techniques, possibly using Babel and lots of other cool but disjoint stuff. This will be mentally very difficult, but it might also be a chance to eventually modernize the WordPress core code base. Again, this will be very, very difficult.
Waiting for someone to do the analysis on what this means as far as GPL is concerned 🙂
Lastly, the announcement on Matt's blog has been “interestingly” worded. Why do I say that? Because my Twitter timeline has been full of tweets like this:
WordPress just moved to Node.js. Mikeal Rogers (@mikeal) November 23, 2015
Of course this is total BS, “new WordPress” is not “100% node.js”, neither it is a “checkmate” or anything like that. But if you don't know WordPress intimately, I am not surprised many people got the message wrong. Again, I'm quite wondering why the announcement has been worded like this, but if the sole purpose was to make WordPress look more modern and get people excited, it 100% hit that goal.
Overall, I think yesterday's announcement has been extremely important, not only because of the new UI but because it might mean some more changes for WordPress in general. I don't think anyone quite knows where this will lead yet but things certainly got a little bit more exciting.
What's your opinion on this? Any other important points I missed?