Jeff Blankenburg posed an interesting question on his blog the other day. He asked, “Why do you write code?”. I started thinking about that question and decided that I not only wanted to answer that question on my blog, but that the answer to that question itself would provide a good synopsis about me for my readers.
The short answer is that it is really who I am. I’ve been fascinated with computers and technology for as long as I can remember. We got an Intellivision when I was very young and had the computer add-on when I was in kindergarten. I remember being able to pull sprites from the game cartridges and move them around the screen and writing rudimentary BASIC programs. The system had so little RAM that it had to have a modified version of BASIC; PRINT became PRIN to save a few bites.
I remember being enamored with what that computer represented. I could give instructions to a machine and it would do as I had asked. I loved programming on the computer because it shared two major themes with another love of my life, Mathematics. First of all, programming was about solving problems. I am at point A, I need to get to point B, what steps can I employ to make that happen? Secondly, computer programming was exact. Barring weirdness, a computer executed its instructions the same way given the same inputs the same way that 2 + 2 will always equal 4. There is something comforting in that.
After the Intellivision computer, we got a Commodore 64 and then a Commodore 128. Games Magazine used to publish BASIC programs for you to input into your computer. There were a lot of PEEK and POKE commands in the lines of code that I didn’t understand at the time, but I still felt like the world’s biggest hacker to make this code run.
As I grew up, I went through a variety of languages and ultimately ended up where I am now, writing C#.Net code. The platforms and the languages have changed, but what I do is still about taking a challenge and performing steps against it in order to reach my goal. 2 + 2 still always equals 4, though sometimes I really have to pay attention to make sure that the computer is getting 2 and 2 and not -87 and 1,348,849 😉 The computer isn’t very smart and does only exactly what it is told, which I guess sometimes makes me not very smart!
Even with that limitation, I feel extremely fortunate to have a career I love that remains challenging and fulfilling. There is nothing like the feeling when you’ve been given a difficult task and you are able to overcome it. That’s why I write code.