Notes by Frank M. Rischner, Ian De Silva, and Brendan Foote
Keynote Address: WordPress.com and the Future of Work
Scott Berkun, ScottBerkun.com
Berkun is the author of the forthcoming A Year Without Pants, a reflection on his time working as a team lead for WordPress.com, and four other books. Before that, he was a Microsoft employee and worked on Internet Explorer and Windows. He saw a lot of differences between those two working environments, which his book aims to articulate. At WordPress.com, people are distributed globally (hence, no one has to go to work or “wear pants”). They also get to meet up in cool places like Athens.
WordPress provides a free blogging service for millions of users. The WordPress software is open-source software, but it requires a web space. When people started adopting it, the creators decided that they needed to create a company to host free instances of the software for people, eliminating the only hidden cost. Its founder, Matt Mullenweg, wanted to ensure that it continued and that people who wanted to use it could without having to find someone to host it.
Now, there are about 65 million WordPress pages. It is a highly visited site (in the top 15 sites visited), but how does it make money? A small percentage of the revenue is from ads. The rest of the income comes from instances they host, upgrades (getting special features beyond the free version), or from VIPs (sites that host all their content on WordPress.com such as CNN).
Because Mullenweg wanted to get the best of the best, not just the best located in a single location, he decided to use a globally distributed organizational structure. WordPress lets people work from anywhere in the universe, with the only requirement being the ability to check in code. The team was globally distributed, with about 50 people in the United States, another 50 in Europe, and another 50 around the rest of the world. At WordPress, Berkun worked with developers who could do their work from anywhere, in almost any conditions, including a hotel lobby with their laptops. The teams were grouped loosely and worked autonomously. And the product drives the company: since it was a service, it didn’t need to have specific release schedules, for example.
While Berkun was at Microsoft, there was an in-house software development methodology. Most people have a good experience with a methodology and then advocate that for everything, regardless of the fit. Berkun thinks, “The only sane people are method agnostic.” He largely sees methods as trends, but ones that people make a part of their identities. He doesn’t think he falls into that camp, but it was still a challenge to go work for a company that wasn’t just method agnostic, but amethodistic (if that’s a word). WordPress.com doesn’t even have a concept of a methodology (well, they do, but they don’t call it that).
At WordPress.com, features are built in a very agile way:
- Pick idea
- Write the launch announcement
- Do work
- Revise announcement & revise work (repeat)
While writing the launch announcement so early seems crazy, it focuses efforts on what value it will provide to users. The scale of this process is, say, a week of work. As a manager, this was both terrifying and liberating. Over a dozen deployments per day were hard for him to swallow, given his quality-assurance background. But if a feature created another bug, they just logged it and fixed it in the same short timeline. If the feature is successful, it stays; if it isn’t, then it goes away. They are “liberated by their autonomy.”
Why does this work? Well, they basically have good, self-motivated people. This can be seen in the way that the employees of WordPress.com communicate. While working at WordPress.com, Berkun didn’t really get any email—but by habit, not decree. Email empowers the sender: it allows others to send you all sorts of stuff that you don’t care about. Instead, they use blogs, which not only fosters transparency but hinges on the self-motivation of the people to check it for vital correspondence. Blogs, then, establish trust within the team. They also kept in touch using IRC for “hallway chat,” Skype for one-on-one conversations, and a custom WordPress theme called P2 (a special kind of blogging service used for teams and for projects). Everyone in the company can read the entries and the replies.
Does this scale? Well, in order to do that, you can to keep the team size small, but let the number of teams increase. Berkun’s keynote emphasized the benefits of having very agile teams that can accomplish a lot without having to be controlled by a manager.
Some of the challenges that WordPress.com had to face are
- cross-domain authentication
- QA across 12+ hosting providers
Eric Raymond’s book The Cathedral and the Bazaar contrasts centralized and decentralized planning. The question of which is better is fundamentally flawed, creating a false dichotomy, but it might be useful to ask if a bazaar-style organization can build a cathedral-style product. Mullenweg wanted a way to provide the services of WordPress.com to WordPress instances hosted elsewhere (project termed Jetpack). This was against the company culture since there was a set release date, a project plan, an architecture, and a large deliverable.
For WordPress, the project was aligning their hosted instances of WordPress with the self-hosted version. Berkun took on the project and tried to figure out how to go against the corporate culture to tackle it. He went back to what he knew and got everyone in a room to ideate on a white board. Architecture was planned within four hours and transferred to the P2 system. Then they started to mock up the user interfaces. Berkun believes the most important thing is the user interface and the user experience. For him, all quality attributes can be summed up as “ease of use.” Performance is a worry because of “ease of use.”
They did stick to the idea of creating mock-ups for what the end product would look like to the user. They did this because when you’re constraining your solution with architectural decisions, the ones made last will have the least freedom, meaning “Whatever you do last will suck the most.” The end result was that the product looks so simple that it may lead users to think, “oh, that must have only taken a day to do.” Because leaving them with the opposite impression, while perhaps a good way to get recognition, misses the point of providing value.
Thoughts on architecture:
- There is no best method
- Talent > Architecture
- Human problems > Technical problems
- Culture > Rules
From Scott’s experience, there is no “best method.” Agile isn’t best, nor is waterfall. In his experience, talent is more important than methodology or architecture. Human problems, and the culture of a company, are more important than technical problems. Moreover, the corporate culture establishes the norms for the organization; thus, they will be adhered to more closely than the rules imposed by a process. WordPress.com has success because the talent of the developers is high. The employees are very autonomous and engaged. Culture rules—this means the flat hierarchies in the company lead to its success.