My 4-year old is a better programmer than you (or me)

pieterhpieterh wrote on 17 Nov 2014 23:22

tweak.png

At three, my youngest son Gregor picked up a mouse and started playing Minecraft, like his older brother and sister. At the age of four he is already a better programmer than you, or me. This is of course an insane claim. So let me explain…

"How come Minecraft is worth so much money?", asked my daughter when Mojang was picked up by Microsoft for $2.5bn. I explained to her about the 3 legs of success: Simple, Deep, Social. (I didn't explain about Damn Lucky and Well Connected, some things you have to learn for yourself.)

Watching my kids play Minecraft, I realized something else. The state of the art for programming, the very best process I've been able to develop, after thirty years of working at this, is still not as good as Minecraft.

What I mean is this: in our projects, we aim for smooth, friction-free collaboration between programmers anywhere in the planet. On a good day, it starts to feel like the fun we felt as kids, first experiencing a computer. On a great day, it starts to approach the feeling my kids have every time they log into a Minecraft server and start making stuff with other kids.

Basically, my kids, like a hundred million other kids out there, are learning ways of working together that beat anything we've yet been able to build professionally. You're going to tell me that Minecraft constructions aren't software, that they aren't real, or they aren't worth money. I think that's missing the point. Knowledge, in the shape of bricks or lines of code, is knowledge.

Let me break this down by listing the assumptions most of us have when writing code:

  • You have to learn to code.
  • You have to be smart to learn it.
  • It is expensive.
  • It is difficult, even unpleasant.
  • It is work.
  • It is compensated.
  • Code is precious.

Now, let me list my son's assumptions when he starts to play Minecraft:

  • You learn by playing.
  • Everyone can contribute something.
  • It is free, or very cheap.
  • It is fun, even addictive.
  • It is play.
  • It is its own reward.
  • People are precious.

Now, my claim, and I've argued this in many articles and texts, is that the more we approach the model where anyone can play, the better the code we make. Quality means one thing: accuracy. And accuracy correlates to the size and diversity of the crowd who are playing, and their freedom to organize.

So if you're not enjoying yourself when you write code, as much as a 4-year old does when playing Minecraft, think this: you're doing it wrong.

Comments

Add a New Comment
Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License