Why do I code? I think it’s healthy for me to periodically ask myself this question. I like to examine the reasons behind why I do things. I think it helps me to avoid wasting time, and to make the most of my life. Below is an example train of thought resulting from some introspection:

I’m still learning. In fact, I’ve only just begun. The sheer amount of information that I am required to process as a Comp Sci undergrad has shown me that. And I love it.

I want to be good at what I do. But what is it that I do? Well…I code. But then again, what do I actually do? What is the intrinsic value of coding? 90% of code doesn’t even do anything. So what is the real work that I perform?

I enjoy problem solving. I believe that Computer Science is far more problem solving than it is coding. When a problem needs to be solved very quickly then it is handy to have a computer do it. How will the computer know how do it?

Programming is telling a computer what to do. The more proficiently one speaks a language the computer understands, then the better programmer one is, right? I can speak English just fine, but it doesn’t make me a better person.

There is no such thing as multitasking, but there is doing a lot of things less well. Good code, good programming, and good design are not about doing “it all” because “we can”. It’s about solving problems and doing real work in the real world, and there shouldn’t be anything virtual about it. Where would SAAS be without that?

Now, if I wanted to make money, then I’d write a free-to-play game with in-app purchases that grosses $3 mil a month on the App Store. Most people aren’t about that, and of course, easier said than done.

So, why do I code?

I’ve been having the above conversation with myself for the past few months. My career path isn’t set. Regardless, I want to know why I would go down any path. I look at my field and I see much that is entrenched in money and entertainment. That doesn’t satisfy, or even pull at me. I want to be involved in something of tangible value. Problems solved, progress made, lives improved.

I want to do good things, however subjective, arbitrary, or vague that statement may sound. I also want to be happy, and I think the first will help with the second. That’s why I enjoy my current job at Ancestry.com so much. Helping people with one of the top world-wide hobbies (geneology) makes me happy.

So many developers do good things with software. How much civil infrastructure relies on “good code”? The world turns faster and faster because of technology. I’m happy to be a part of it.

Why do you code?