Becoming a Programmer
I haven’t always been a programmer. In the beginning, I actually wanted to be a hacker. After a couple of well placed news stories, I decided that the fame and glory of hacking might not be worth going to “federal pound me in the ass prison”.
It all started at the Auburn University Library. Most of my friend’s parents worked at the university and being too big for a baby sitter, we usually spent lots of our time on the public computers. The internet is a funny place because it can take you anywhere. Sure enough after all the hours wasted going to chatrooms, sports forums, and game sites, I accidentally stumbled upon The Hacker’s Manifesto. It might have been because I was extremely bored, or I was young and impressionable, but no matter what, I was going to be a hacker.
I delved into all things hacking and consumed everything I could find on the subject. Phrack and Hack This Site were favorites of mine but the article that left the largest impression on me was How to Become a Hacker (pretty obvious how I found it).
After reading the article, I went ahead put it into practice. I started off, learning HTML (no Javascript) in the 6th grade. The only major project from that era was a Dragonball Z site that got 200 hits a week. After HTML, I learned C/C++. By this time, my lust for hacking died down and I was just enthralled with programming. The ability to put your thoughts in code and have a machine run it exactly was really thrilling.
By this point, hacking was non-existent in my mind and all I wanted to do was create games. John Carmack was a personal hero of mine for his legendary 3d rendering engines for Doom and Quake series. Starcraft is the best game ever made and really made me want to join the industry. I ran through most basic games like Pong and Breakout (never did make a Tetris clone). 3d game programming was the next progression and my parents bought me this book: Tricks of the Windows Game Programming Gurus by Andre Lamothe. This book was extremely helpful and pretty much gave you a great framework for Windows game programming. Using GarageGames, I worked on a couple of game projects with other kids who lived and died for coding.
Unfortunately, I lost most of my drive for programming in junior year in high school. I can’t really pinpoint the reason why, but programming lost some of the thrill and excitement it held earlier. I continued to program in internships but the companies I worked for didn’t really want a high school kid coding on one of their live projects. I was mainly a technician for email support, or desktops/laptops.
When everything was looking down and college wasn’t really doing it for me, I thought that I should just dive back into programming. I interviewed with two companies and decided that this really small start-up would be a great place to learn some new skills and do something that’s never been done before. A year and a half later, I am still with Grooveshark and loving it. Currently, I do web-development writing some of the HTML/CSS and Javascript that gives Grooveshark its web2.0 feel. Every now and then I dabble with some server-side PHP.
So that’s basically it. Programming isn’t really hard, but becoming a good one is. Like anything worthwhile, lots of practice and a good breakfast is all you really need.