Creating Software isn’t a Job…

…It’s a lifestyle. I’ll explain why in a second, but first let’s get some context.

Here are a couple of people that are in the wrong profession:

We’ll start with the engineer. If he were a character in The Wizard of Oz, I can tell you what the Wizard’s diagnosis would be: He has no passion. He thinks he can just phone in his programming career in a 9–5 setting and be done with it.

The cargo-cultist is a more interesting case. Here’s a young man that is trying to decide if programming is the right career for him. He wants to become a better programmer, but he’s unsure about his skillset. He (wrongly) blames his learning abilities for his shortcomings, when really he has all the tools he needs to succeed — He’s simply not motivated enough.

There’s a simple fact that neither of these gentleman have yet realized:

Software is art.

Being a software developer is like being an artist. You aren’t just creative for 8 hours a day. You can’t turn it on and off. Your motivation to create ebbs and flows around the clock.

Not into the art thing? Fine. Here’s my* other analogy.

Programming is a sport.

A competitive one, like soccer football.

Do you think footballers only play football during games? Or even just games and practices? Of course not. They love football. They play as much as they can.

Would anyone ever think it’s stupid that footballers make jokes about football? Or play football on weekends? Or try to change the world by kicking a ball? Never.

Near the end of a losing streak, do the players blame their skills? Is everyone else just more talented? Don’t make me laugh. They get out there and train as hard as they can, because they love what they do.

And so do we.

If you’ve any doubt left, it’s time to start thinking about your next gig…


* Ok, so this wasn’t entirely my metaphor; hat tip to davefp for the assist :)

4 Responses to “Creating Software isn’t a Job…”

  1. Leah Menard Says:

    That first article could have been written by me (as an outsider). I think I’ve said several of those points to you before:

    -Who does their job and then comes home and does their job on weekends..for fun?
    -Who goes to conferences without getting paid so they can do some “fun” software things? Only to do it from 9-6 every other day of the week?
    -Why is your entire life about what you do for a living?
    -How can you be considered a well-rounded person if 90% of what you do is spent sitting in front of a computer programming code or learning about programming code?

    These are completely reasonable questions and I completely agree with him in every way….except that he absolutely should not be a software engineer.

  2. Gord Says:

    I usually compare programming with cooking. Some cooks will work a shift dishing out decent food, then go home and forget about it. Others will go home and obsessively experiment with ingredients, styles, and tools. If you’re passionate, the hours are crazy and few people fully appreciate the end result.

    Having said that, I ask myself Leah’s questions every other week. Don’t have good answers.

  3. dan Says:

    I’ve heard programming compared to cooking before, but for a totally different reason. It was about refactoring, and how good cooks never make huge messes — they clean as they go. The idea is that you should never “have” to refactor your code if you’re careful and forward thinking in the first place.

    (Whoever I heard that from had a nicer way of saying it.)

    Oh, and don’t listen to Leah and her questions accusations. She’s just a big meanie.

  4. Gord Says:

    I think the answer that I usually come up with is that this doesn’t feel like work to me.

Leave a Reply