Skip to content
17 January 32010 / Robin Wellner

The snowman

I was outside. It had snowed. I decided to make a snowman. Well, more of a snow tower. I only rolled out two balls of snow, and proceeded to put snow on top of it. It grew rather tall, but every time the top would fall off. So I started to “patch” any weak points with loose snow.

And then I saw a analogy with software development. You see, the more time I spent patching the snowman, and making it more stable, the less time I could spend on making the snowman taller (adding features). And if I added new features, err, snow, too fast, I had to patch it up quickly or else it would collapse.

And I started thinking. If there was someone else who could do one of these things for me, I could focus on either patching or making the snowman grow.

But what if it would be tall enough? Well, I though, it would never be tall enough. There is always some snow to put on top of it.

It would eventually reach so high, nearly all my energy had to be spent on patching, because it would collapse otherwise. And not much later, it would have become so unstable I would be better off starting again, from the ground up.

Other people who wanted to join might just start their own snowman. And suppose the whole neighborhood would be here. They could start their own snowman, or join existing snowman projects. My job would probably be less and less about building a snowman, and more coordinating effort, and recruiting new builders. I think I’d prefer to make one alone or with one or two friends.

And there are a lot more similarities to be found.

So next time someone asks “So you write programs? What’s that like?” you can say: “It’s like building a snowman.”

Advertisements

4 Comments

Leave a Comment
  1. startx / Jan 18 2010 19:22

    hi.

    i looked at your code in GitHub and couldnt find a license. im interested in this project and was wondering about that? GPL or MIT?

    • Robin Wellner / Jan 18 2010 21:13

      Most of it is licensed GPL, but what project are you referring to?

      • startx / Jan 18 2010 23:01

        sorry, forgot to mention it 😉
        i was referring to the text adventure library in lua.

  2. Robin Wellner / Jan 18 2010 23:27

    You’re right! Completely forgot. 😉 I have it under the MIT/X11 license now.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: