A Different Angle about the Story behind the New WordPress
If you have arrived here is because you have given me the chance to show you if this post is about the tech and code base changes that WordPress (maybe better to say Auttomatic have done over the last year and half to release a new product called Calypso which is bound to the famous WordPress CMS .
My goal here isn’t to write another post about the tech of this topic, there is a bunch already available on Internet besides I don’t have that much experience in WordPress development; then what is this about?
A short post to put together the paragraphs and my comments aside about the company culture which are in the official launching post , so I start with it.
Since WordPress is a PHP-powered application, our company-wide development skill-set has historically been PHP-heavy with a sprinkling of advanced JavaScript. This made Calypso intimidating to other engineers and designers at the company for much of the first six months of its development — we were building something that few people could jump in on.
Clear Automattic managed well how to start making small steps into the new technology which they were intimidated to be able to lose the fear.
But as each day passed our experience built, we made mistakes, we reviewed them, we fixed them, and we learned. Once we had the project moving, we set better examples for other engineers, and shared our knowledge across the company
They have clear recognised that they made mistakes to be able to learn, even though, in my opinion, is the only way to actually learn, not all the companies, teams or people recognise their mistakes externally or even worse they don’t make a retrospective basically because they don’t see their own errors.
On the other hand they knew how to highlight the progress by examples and spread the knowledge which is king for team.
Calypso prototyping was done collaboratively between a handful of designers in GitHub; although many of us had long used GitHub for personal projects it was relatively new for internal projects, which historically used Trac for most project management and bug tracking
The adopted new tools at the same time that they shifted technology, taking a look to other teams success and not being afraid to make several changes at the same time.
As GitHub had worked so well for the prototyping stage we switched for all Calypso development, allowing us to harness the pull request (PR) system for peer code reviews, and build our own custom GitHub-based workflow. Code reviews were new for many developers — traditionally at Automattic, we have had no systematic peer code review system outside of the VIP team’s daily code review of client sites. Code review, though it initially added to the intimidation of starting to work with Calypso, greatly increased the quality of our codebase and helped everyone level up their JavaScript skills.
They have also adopted peer code review even though team member were even more intimidated; that means that the members, or the majority of them, haven’t been reluctant to the change and they understood that company needed a shift.
What started as a team of seven people working on Calypso quickly spread to a cross-section of teams with ten, then 14, then 20 Automatticians actively working in the Calypso codebase. Two months after the launch of the first Calypso-powered feature on WordPress.com, we had 40 contributors working on Calypso across five different teams. We iterated over the next year with the “release early, release often” Automattic mindset, launching 40 distinct Calypso-powered features on WordPress.com with over 100 individual contributors.
This highlight the company culture and the quality of the employees.
Over the past year and a half, Calypso has gone from an idea to an aspirational prototype to a fully functioning product built, launched iteratively, and used by millions of WordPress.com users. Internally, it’s been a period of great change and growth. We’ve embraced cross-team collaboration through GitHub and peer code reviews through the PR review system, gone from just a couple of great JavaScript developers to a company full of them, and seen incredible collaboration between designers and developers on a daily basis.
Quickly the whole company have realised of all the benefits of sharing knowledge and they embraced it; I’m totally sure that this only works with combination of people with good mindset and a good company culture.
I’ve been delighted to find in the official launching post all the changes which have made this new shift than finding a very technical post, because at the end the people and the culture make these things happen.
If you also want to read a clarification about the tech changes which have been done in WordPress, I recommend you to read Clearing the air: Is WordPress being rewritten in Node.js and React? by Wes Bos
Drop a comment if you have similar or opposite experience, I would like to hear about it.