Why I write software in my spare time

For a long time now I’ve been wrestling with the fact that I hate what I do more and more each day. I’ve been writing code, in some form or another, since I was twelve years old. Initially, it was because I wanted to write games (just like every budding young software engineer). Then, once I realized how hard game programming is, I simply wrote whatever programs I needed that someone else hadn’t written already. Eventually, I began writing things that solved problems other people had already solved, merely because I thought I could do it better.

Now, I’m not really sure why I still code in my free time. It’s partly because I need tools that do certain things, and it’s partly because I’m not satisfied with the tools that are already available. But I think an even larger part of it is that in six years of getting paid to write code, during which time I’ve worked on at least ten different software projects, I have never once worked on a project that did not fail miserably. As a result, I think I compensate by writing and releasing my own software in my free time.

This way, I know exactly who to blame if my project dies from mismanagement or bad design. I also get to dictate coding style, features, and how long I’ll put up with stupid users before ignoring them. And best of all, I get to experience that wonderful feeling that comes from releasing a product I’m proud of and then watching people use it.

Still, I think I could learn to enjoy coding again if I just got the chance to work on one single commercial project that wasn’t completely doomed right from the start.

Somebody help me.