A Trip Down a Programmer’s Memory Lane.

[This is a post I wrote on my old blog July 31st, but I felt it was relevant here as I’m still working on this project–stay tuned for updates!]

The other day, I was listening to the Ruby Rogues Podcast: Episode 154, and they start talking about something that has absolutely nothing to do with the normal Ruby topics. They were talking about game development. Within the first few minutes, James Edward Gray says:

It seems to me that when I talk to lots of programmers, and they give me their origin story, it somehow includes “Oh yeah, I got into programming because I wanted to make games.” I swear a strangely high percentage of people say this. And then I talk to them and say “Awesome! What have you made?” And they’re like “Oh, nothing. A little something, but yeah, nothing.” And I think this is kind of tragically sad.

Ouch. That hit way too close to home for me. I originally really got into programming when I was middle school aged, playing in qbasic (or Quick Basic 4.5, that I bought from Babbage’s). Then later in high school I taught myself C++. The whole time, I was making games–or trying to. In reality, I would do clever things with graphics libraries, try to tie them together into a game, then either hit the ceiling of my technical ability or just lose interest and move on to something else. In almost every case, I had a vision that was much larger than I was willing or able to follow through upon. In college, I modified a CircleMUD codebase in an effort to make my own MUD, but again, it eventually fell by the wayside even though I had several really cool things that I did with that code. At some point after, I converted to programming for a living and never really attempted to write another game from that point on.

Upon this reflection, I think I’ve learned two lessons:

  1. I shouldn’t berate myself for these unfinished projects. Although I never completed them, I learned so much. And what I learned eventually translated into a fairly good living with a job I enjoy.

  2. I should choose less ambitious side-projects, something more achievable, where I can build something that I can actually show to people in its completed form.

  3. I should write and complete a game. It was always one of my dreams to complete a game. It’s definitely within my abilities. And I still kind of feel guilty that I never achieved this milestone in my life.

So, here it is. I will set forth an immediate side-project goal of creating and completing a game. Right now, it seems like the best place to start is with a mobile game. These games can be simpler and there are several frameworks available to speed development of such games. In fact, I’ve already begun reviewing several of these frameworks. I’ll post a summary of my findings on each of these frameworks on the next post. In the meantime, send me a tweet with your thoughts on this subject! Did James Edward Gray’s statement resonate with you as well? Have you done this before, or want to? Would you like to point and laugh at my first attempt? Talk to you soon.

–Kevin