Why I Push Buttons: A Programmer's Journey
I've always loved pushing buttons, ever since I was a little kid. There's just something about pressing a button, feeling it sink and make contact, and having that do something that is innately satisfying to me. Pushing buttons to me is akin to breathing; it's an involuntary muscle reaction. In fact, I go so far as to press down all the little tabs on top of the plastic soda lids every time I get one. If there were several of us trapped in a room with a big red button labeled "DO NOT PUSH," I'm the guy you'd have to worry about destroying us all.
I blame my grandparents. My dad's parents, to be specific. They were the ones who got me hooked on buttons at a very early age. They would always let me call the elevator and order it to whatever floor we needed. Such power wielded at the tender age of three! But it didn't stop there, oh no. There were several toys I was given over the span of a couple of years that would set my life on a course that I would never be able to change.
I don't remember which came first, the hand-held pinball game or the Speak'n'Spell, but I was captivated by those machines for hours on end. I'm pretty sure my parents spent more money on batteries than on my college education. The fact that I could press buttons and make letters appear or hit a little pinball around a virtual table while accumulating the high score captivated my little mind like nothing I'd ever experienced in my few years of life. Hours long trips to the beach or to relatives' houses seemed to last mere minutes while I played in my digital realms.
After I outgrew the Speak'n'Spell, my grandparents presented me with the awesome WhizKid. At least, I'm pretty sure that was the name. I can't for the life of me find a picture of it on Google Image Search. It had a huge base with a thin keyboard that flipped up and locked into place over the display, and the games ran off of little flexible cards. If you know what I'm talking about and can find an image, I'd appreciate it. Then all of the intarnets will bow to your web-fu.
After the WhizKid, it was a small portable computer system with a single line display. The text would scroll across the LCD, letting you play hangman and other games, as well as asking you math, geography, and history questions. This little machine was also my first introduction to computer programming, as it had a very rudimentary form of BASIC on it. I was entirely too young to really understand how intricate programming was, and I don't think I was even able to grasp the concept of a variable at that point. But I did manage to figure out the PRINT command, and my rapidly developing brain found this utterly fascinating. I could make this machine say whatever I wanted it to say, and it had to do what I told it! Even if it was "Poop!" (Not surprisingly, I still find this highly amusing.) I was on a pre-pubescent power trip from which I would never recover. Many machines came and went during my early childhood, from my friend's Atari 2600, to my first Nintendo, to a Sega Genesis; they all impacted my life, even if some were not as important or memorable as others.
From grades four and up I was fortunate to attend schools which had computer labs. I didn't care if they were IBMs or Macintoshes, as long as I got to use a computer. Computer lab was my absolute most favorite thing to do at school, and I loved using these machines to engage my mind with activities like Number Munchers and Oregon Trail. It would make me sad when computer lab was over because I knew I would have to wait for an entire week before I got to play on the computer again.
My first exposure to industrial strength computers came when I went to visit my aunt and uncle in Houston. They both worked at NASA, and they got to take me on a personal tour of the complex. I even got to go into Mission Control and watch them launch a satellite. They even let me play at one of the stations, allowing me to put on a headset and talk to the other engineers! It was fantastic and pretty much my life's greatest accomplishment up to that point.
After the tour, they took me back to their place, where they showed me their IBM PC and set me up with Wolfenstein 3D. I can remember the first few minutes of this like it was yesterday. I was amazed that I was able to walk down halls, open secret passages and doors, and shoot nazi scumbags all while collecting tons of treasure! Apparently I also learned to swear in German, yet another educational experience point gained from computers. I remember that when I first started playing, the game made me feel nauseous, as I'd never been exposed to any kind of 3D game before. There were several times where I wanted to quit, but I fought my way through the sinking tugs in the pit of my stomach. I was just too enthralled to stop, and I never told my aunt or uncle how bad I felt because I was afraid they would make me stop playing. After this day, I never got motion sickness from a computer game ever again.
It wasn't long after this trip that my dad purchased our very first home computer: a Packard Bell running Windows 3.1. I was meant to use it for school work, which I did, but the majority of the hours spent on it were dedicated to games. I remember the very first game I bought with my own money: X-Com UFO Defense. I played this game for hours and hours and hours. It had everything a kid could want: space, aliens, explosions, rockets, guns, flying saucers. Those of you who played this game know exactly what I'm talking about. The other game on this system that really hooked me was the original X-Wing by Lucasarts. This one not only caught me in its unrelenting grip, but it snared my dad as well. It served as a great bonding tool, as I would watch dad fly a mission, and he would watch me, each of us acting as spotter for the other. I watched the tiny dots on the radar with an intensity of focus I had previously reserved for GI Joe and Teenage Mutant Ninja Turtles.
This computer was also my first exposure to a more robust form of Basic than I had learned previously in the form of QBasic. The first real program I ever wrote was a computer game review program. When you started it, it would bring up a list of computer games that I had played. You typed in the number corresponding to the game you wanted to read about, and it would display my opinions for your perusal. I was immensely proud of this little program, and I showed it to anyone who would look at it.
Through my high school, college, and professional years, as technology became more sophisticated, newer and faster machines replaced the Packard Bells, and larger and more complex languages have replaced the simple world of QBasic. These improvements seemed to come along increasingly more often, constantly feeding my need to find new ways to learn and play. Looking back now, it seems I really had no choice in what I was going to do when I became an adult and joined the ranks of tax-paying citizens. My place in life was reserved at a very early age, and I never once considered veering from the path that would take me there. After writing this post, the very thought seems ludicrous.