I do not have particuarly vivid memories of my childhood. Heck, I don’t have particularly vivid memories of last month1. So it’s a bit of a surprise that I remember a computer my dad bought in 1985, when I was just 3 years old.
The computer was an Ericsson PC which, according to this website, boasted a 4.77 MHz Intel 8088 processor, 640K memory, a 10MB hard drive, and a 5.25” floppy drive. It ran MS-DOS. All I remember about it is the orange screen.
Other memories I have of technology while growing up involve a giant Bernoulli Box, playing games in MS-DOS, a Game Boy, the Nintendos my friends owned, Windows 3.1, and then THE INTERNET. And all of the sudden I cared about computers very, very much.
Seriously, I thought computers were nifty and stuff, but they held little interest for me until I discovered AOL on Windows 3.1. We had a 1200 baud modem at the time and it was awesome. And by awesome I mean horrid. I tried to upgrade AOL and it told me it’d take over 200 hours. I may have died a little inside right then.
Shortly after the arrival of a new HP Pavillion, sporting a 75 MHz Pentium and a 14.4 modem, my parents died a little inside. The cause was, surprise surprise, the huge bill I quickly racked up on AOL. They wasted no time signing up for a real ISP after that. The new ISP, Netcom, let customers host websites. To completely understate the impact this had on me, this was significant.
I’ve mentioned previously that prior to becoming a computer nerd I wanted to be a mountain man. What put an end to that lonely, beard-ridden dream was the internet and an insanely awesome game.
Which game, you ask?
Oh, you mean you’ve never heard of it? Most people I’ve talked to haven’t. It was a fun little puzzle game that came with the Microsoft Entertainment Pack on Windows 95. I was obsessed. So obsessed, in fact, that I wanted to post cheat codes on the internet. Other games had websites with cheat codes, why not Chip’s Challenge?
So I set out to build a website for my favorite game. I learned I had to host the website and that our ISP gave us something like 5MB of free space. I learned how to upload stuff via FTP. I ate up all the HTML tutorials I could find.
My obsession with Chip’s Challenge faded as I built that first website. Holy crap look at this thing I created called a TABLE. It HOLDS things like TEXT or IMAGES. For goodness sakes stop what you’re doing and come look at my table.
IT HOLDS THINGS.
I never did post those cheat codes. I did, however, make some pretty epic websites. And by epic I mean utterly horrific by today’s standards.
Lots of frames. Comic Sans. Garish colors.
Oh, the sins.
I committed them all.
The next major nerd event in my life may have been the result of the first and last ad I ever clicked on2. However it happened, I found myself reading about something called Visual Basic which could be used to make software for Windows. There was a free trial, which I promptly downloaded (well, as promptly as can be expected on dial-up).
That I could make real software3 for Windows was as least as mind-blowing to me as my first HTML table (that could HOLD THINGS!).
My parents got me the full version of Visual Basic for Christmas that year. I wrote the world’s first popup advertisement killer, a real-word password generator, a clock replacement, a security tool, a note taking app, and 10 other miscellaneous applications I either sold or gave away.
There is nothing quite as exciting as that first download, first review, or first purchase by a random human being somewhere else on planet earth.
From Visual Basic I moved on to Delphi, which I loved for the lack of those horrible runtimes which had to be included with VB apps. It’s funny now that increasing the download size by ~1 MB was such a big deal back then. Check it out, this application is only 14 KB zipped! That’s totally a reason to pay me money!
In 2003 I found myself at a crossroads. I’d just returned from a 2-year mission for my church and didn’t know what to do next. Start school? Find a job? Try to turn my out-of-date software into a real job?
Being away from programming for two years (a fact I do not regret) meant that I was a bit out of touch and behind the times. So I decided to make some minor updates to a few of my applications to get back into the feel of things, figuring my next step would be school.
Instead of school, I got a job working on a website with some friends. I learned PHP. That job led to another and then another. 10 years and 7 jobs later, here I am, still excited about things that hold other things. While tables aren’t quite as exciting as they used to be, there are thankfully a lot of other stuff-holding (and stuff-manipulating) things to play with.
One of the best things about what I do is that there’s always something new to try, a new beginning to be made. As long as I keep pushing myself to learn, those HOLY CRAP TABLES HOLD THINGS moments won’t ever go away.
If you’re a programmer that hasn’t had a HOLY CRAP moment in a while stop what you’re doing right now and go try something new. Never used Python? Build something with it. Don’t know how lexers or parsers work? How about list comprehension? Genetic algorithms? Go find out. You won’t regret it.
Slight exaggeration, mostly because I’m not completely sure it was an ad that led to the discovery. ↩
Many would argue that software made with Visual Basic cannot possibly be considered “real” software, but I maintain that it is, at least for my purposes here. ↩