Josh Havins Personal Web Page

The Story of How I Became a Programmer

When I was a little kid, my parents and I were returning from vacation when we happened to stop inside a store where I saw a wall of computer games. As I browsed through the collection, one game caught my eye. On the cover was a picture of Darth Vader swinging his red lightsaber at someone with a green lightsaber. I immediately knew that I had to play it. I asked my mom if she would buy it. She did. And thus began the journey.

The game was called Star Wars Jedi Knight Dark Forces 2. I spent the whole ride home reading the manual. The more I read, the more excited I got to play it. Lightsabers. Other powerful weapons. Force Powers. The ability to choose the light side or the dark side. Seven bosses classified as Dark Jedi. Much fun was about to be had.

I played the Single Player aspect of the game many times. Sometimes on the Light side, sometimes on the Dark. Defeating each boss, each Dark Jedi, felt like an accomplishment. I had no complaints about the game.

Not too long after this, my dad was able to get dial-up internet access for our home. It was at this point that I discovered another great aspect to JK DF2: Multiplayer. Our internet speed was painfully slow. 3 Kilobytes per second. But fortunately for me, JK DF2 Multiplayer was still perfectly playable. I loved getting the chance to play against people all over the world.

After playing multiplayer for a while, I encountered something that I had never seen before: cheating via hacks. I witnessed online opponents perform tasks that shouldn't have been possible. The ability to fly. The ability to teleport. Endless powerful projectiles. I was more curious than upset. How were they doing this?

Through many hours of tireless research, I stumbled upon these websites claiming to provide downloads that would hack JK DF2. All you had to do was download the file, place it in a specific directory where the game's installation was, and start the game. The folder was called Cog, and the files had .cog extension. I tried it, but it didn't work. I spent a long time trying to fix it. That was when I discovered something about some computer programs: case sensitivity matters. I changed the folder Cog to cog and poof! It worked! I was amazed at the powerful nature of these hacks.

One day, curiosity got the better of me, and I opened these cog files in a text editor. I began reading the text inside, which I later learned was called code. The code made sense. It was english words with numbers and symbols added in. I thought, what if I changed what was written in these files? Could I make the game do whatever I wanted it to do? I tried changing some variables, and poof! I had just done my first hack. The rush of adrenaline gave me a proud sense of accomplishment. I was now a programmer.

So, that's my story on how I got into programming. I've been doing it ever since. In high school I was tasked with creating some German Commercials in my German class, along with two classmates. I used the JED Level editor for the JK DF2 game to create my own little game for the project, and I scripted events using cogs. It was the most fun I've ever had on a school project.

May the Force Be With You!