This is a green blog. It runs on pure money.

What Minecraft Can Teach Us About Open Source Communities

Date/Time Permalink: 01/07/12 07:44:10 am
Category: General

Along with the praises I've already heaped upon Minecraft and the fascination I've continued to have with it, I've been enthusiastic about it because of its very unique development pattern.

Minecraft, you see, is developed a little bit like open source software evolves. The lead developer, Notch (Markus Persson and his company Mojang AB), has been plugged into online social media since day one. He tweets, he blogs, he responds to forums, he asks users what they want to see put in next. And also the game has a thriving mod community (even I've done a custom texture pack). What's more, when a mod becomes particularly popular, Notch ends up incorporating it into the game, such as with the pistons mod. For another example, the game now includes ways to switch custom texture packs.

Watching Minecraft "grow up" for two years has been a unique experience in studying how software and the community around it grows together. Here, we have an example of a developer who bends over backwards to make everybody as happy as he possibly, humanly can.

And you know what? Nobody's happy.

Give them features? They want more. Fix a bug? But they liked that bug! Take a suggestion from the community? They didn't want that suggestion to go through; they wanted this other suggestion to go through instead. Take a feature back? How dare he! Did something break the game and Notch didn't immediately jump out of bed at 3AM Saturday morning to fix it? How dare he! Take time off? You suck, Notch! Be too long before apologizing for a slight offense? You suck, Notch!

No matter what he does, no matter how many rabbits he pulls out of his hat, everything is you suck, Notch! You suck, Notch! You suck, Notch!

Minecraft, as it stands now, is more the fans' creation than it is Notch's. It barely resembles the game I first started playing two years ago. Now it has an ending (written by a fan), a new dimension (suggested by fans), a whole alchemy and enchantment system (suggested by fans), a new monster called the "Enderman" (suggested by - and even named by - fans).

On and on and on. Notch has been the proverbial organ grinder who will play any song the crowd requests. And the crowd stays there, but never stops complaining all the way through it. They are people who have every right in the world to be happy, and they never, never say that they are. The ones who wanted alchemy complain about the dragons. The ones who wanted dragons complain about the XP system. The ones who wanted the XP system complain about the Endermen. The ones who wanted Endermen complain about the food/hunger system. The ones who wanted the food/hunger system complain because it took too long to put in. Everybody else, who haven't gotten anything they requested, is divided into either clamoring for their new feature to be pushed in next, or the people who never wanted anything added to the game and wish it could go back the old way. There's also the people who complain because now the game runs too slow with all the new stuff in it.

Anybody who develops Free or Open Source Software needs to pay attention to this.

No, this is really important! Pay attention, FOSS developers.

I won't even condescend you this time by explaining it. You're bright people, you can come to your own conclusion. What does this tell you about the feedback you hear from users? What does this tell you about all the online flames directed at the popular kicking dogs around the Linux campfire? What does this tell you about changing things based on user feedback?

Can you think of an old metaphor about trying to please everyone?

I knew you could!

UPDATE 2/3/11 Jeff Atwood learns a similar Aesop with Listen to Your Community, But Don't Let Them Tell You What to Do.

Follow me on Twitter for an update every time this blog gets a post.
Stumble it Reddit this share on Facebook

suddenly the moon