WordPress is certainly the most popular open source blogging platform, but how are development decisions made?
You may have heard that WordPress is a democracy, that Matt Mullenweg makes all the decisions, or that Automattic governs the development of WordPress. Of course, neither of those are true.
WordPress is actually a Meritocracy. It’s really quite simple and efficient, but the more you contribute to WordPress, the more weight your opinions carry when it comes time to make decisions. Probably the best example of this is Andrew Nacin. When Nacin began contributing to WordPress, he could only submit his bug fixes and enhancements for review. After showing his commitment to the WordPress community over three months and a hundred patches, Nacin was asked to be a core developer. Now, Nacin’s bug fixes and enhancements go right to the core.
I could write pages upon pages describing how everything works, but I’d certainly have a hard time explaining it better than Jane Wells did at WordCamp Portland 2010 during her session, How WordPress Decisions get Made.
Fixing bugs and making decisions are (in my mind) two fundamentally different things. Just because someone was offered a position of a developer in a company, it doesn’t seem to imply that they have any say in the direction the platform is taking.
This.
Obviously being a core contributor substantially increases the chances of your viewpoint being considered when Matt is making the decisions, but that is hardly the same thing as being a decision-maker yourself. Core developers and Automattic staff can make decisions about how changes are implemented, and they may even have a degree of input into which changes are implemented, but Matt will always have the final say and nothing is going to happen that he doesn’t approve.
Angie, the simplest feature can have the longest code. If a bug takes three days out of coder, the decisions are made.
I make those decisions every week as a tech project manager. In other words, my question to the developers is always the same: “How long is that going to take you?”
**cough** capital_P_dangit **cough**
**cough** Hello Dolly **cough**
The WordPress project is a vast-majority-of-the-time-but-not-always benevolent dictatorship. Let us not pretend otherwise; such pretense leads only to frustration and hardship.
First, “meritocracy” is not a form of governance; rather, it is an ideology. Thus, the application of the ideology to the project does not necessarily indicate the form of project governance.
Second, WordPress is not a “meritocracy” (as That Girl Again rightly concludes: commit access is not equivalent to decision-making authority).
Third, even if it were a “meritocracy”, it would be foolish to apply “demonstrated ability” with respect to PHP coding to “demonstrated ability” to make project-direction decisions, to the exclusion of all other forms of potentially meritorious contribution to the project.
As far as I’m concerned, “meritocracy” is just another term, along with others such as “community project”, that is applied often – and inaccurately – to the WordPress project.
The leads were in agreement about both of those things you cite. Respectfully, you’re wrong about one thing in particular: The demonstrated ability goes both ways. Someone would not be made a committer or lead developer if they cannot demonstrate the ability to make decisions.
I’m kind of offended you don’t think any members of the core team make any project-direction decisions. I’m sorry you don’t see that from the outside looking in.
But if it is only the agreement of the leads that matters in such decisions, doesn’t that outcome imply an oligarchy, at a minimum? (And by the way: agreement with respect to the two things I mentioned wasn’t quite as universal as you imply.)
Please don’t take offense to anything I said; none was intended. I have no problem with dictatorships (I am, after all, a (K)Ubuntu user); what matters most is the quality of the product – and WordPress is a spectacular product.
Also, I didn’t intend to imply that members of the core team don’t make project-direction decisions, but rather that one person holds veto power over those decisions.
(And I’ll admit that I could be speaking entirely off-topic from Jane’s presentation; when I get a spare 45 minutes, I’ll watch it. I’m speaking in terms of general principle, but I’m also interested in the specific context of her presentation.)
I almost used ‘oligarchy’ in my comment above. The point is, if you want to be part of that group, then it’s based on a strong sense of meritocracy. Even top core contributors not on the core team have a very strong effect on the direction of the software. (I don’t think a lot of this is readily apparent to those who don’t follow day-to-day activity, though.)
I didn’t imply universality. I implied agreement among the lead development team.
So called “veto power” is also held by Jane for anything UI/UX, and Ryan for anything regarding implementation. We just don’t call it that. Among ourselves, we defer to each other when it’s appropriate.
Greatly said!
Another exemple is how MU is implemented. It’s good for a multiple independant sites portal like WP.org, but it sucks if we wanna have many sites and have them interacting.
There’s even a WordPress fork that implemented multisites in the right way, but he never got attention because of lack of support from “The Core Devs”, and MU smashed him.
And… how long haven’t Matt contributed to OpenSource WP by track additions?
I still think facebook, and twitter account logins should be included in the wordpress core. Seriously, nobody wants to register for yet another blog. there are so many wordpress blogs out there in the world if i had to register for each and every one, I’d be spending more time registering then reading.. yet…everyone has a twitter or facebook account already, right? so whats the point of reinventing the wheel? why not just use existing accounts you already have instead of having to register for yet another blog? it would certain get rid of the spam problem once and for all if they did then everyone could register with existing accounts they already have, end of spam problem forever.
A few issues with that.
1. Most blogs don’t require registration to comment. Those that do, are either doing it wrong, or have a very good reason. You didn’t register to comment on this site. You entered your information once, and a cookie holds it for your next visit.
2. Neither Twitter nor Facebook are open systems, and certainly not open source.
3. WordPress is older than both Facebook and Twitter. What happens when the next big thing comes out? What happens when either of them get replaced? What if we implemented MySpace single sign-on five years ago? That’d look silly now. Then what’d we do?
4. Check out Akismet for the solution to comment spam. Also, that’d hardly be the end of spam, it just shifts that to Twitter and Facebook. There’s spam on both of those systems. Centralizing systems only makes it worse.
5. Reinvention of the wheel: If you feel strongly about this, there are some great plugins out there. There are plugins that do both Twitter and Facebook integration, and there are also all-in-one social commenting solutions like Disqus and IntenseDebate. But it doesn’t belong in core.
Nacin
I’m gonna agree with Andrew. Look at what is happening with Myspace. It used to be the biggest thing out there & now it almost has tumbleweeds rolling across its abandoned pages.
I’d rather WordPress work on core functionality and fixing issues. There are sooooo many great plugin’s developers that it’s a waste of the WordPress team’s time to direct their attention off the main advancement goals.
Have OpenID support would be nice, though. I’m not saying about using a OpenID to register, I’m saying about having our OpenID account on our own site and use it to login in other sites.
But again, as nacin said, OpenID didn’t receive so much acceptance and the few sites that support it also allow direct registration.
Seriously, nobody wants to auth with Facebook to comment on a blog.
You don’t have to register at every blog to make a comment. There are some you come a cross that does require you to be a member, but not as many as you might think. I like wordpress the way it is now, sure there’s some things that need working on, but don’t go toward a facebook or twitter login system.
As a long time WordPress user I strongly disagree with integrating Twitter or Facebook registration into the WordPress core. As has already been mentioned there are a ton of reasons why it is not a good idea, especially when there are plugins available for any site owner that wants it for their own site.
I truly enjoyed Jane’s presentation. I’m someone who makes a living out of WordPress but I hardly give back directly to the community. I do however spread the word, teach and coach.
Whatever name the decision making process has, it sure works. WordPress has constantly broken barriers in terms of ease of use, without forgetting the ease of installing on whatever server configuration out there.
WordPress’ leadership has survived the growth of Autommatic. In that regards, very few open source projects have gone that far, that big.
To put it in a few words, I love WordPress. The affair began 5 years ago, and I never looked back.