Learning programming through hacking AOL

May 08, 2019 // A journey through hazy middle school memories of discovering the joy of code.

My first taste of programming came in middle school. Middle school for me coincided with the mid-90s, which were a bizarre time. Hackers was released in 1995, and was a land of unimaginable techno coolness to us suburban, basement-dwelling, NES-obsessed weirdos. The Net was also recently released, and Sandra Bullock was playing Wolfenstein 3D and outhacking her pursuers. People were prefixing "cyber" in front of everything, and it actually seemed cool. I learned from the pop culture of the day that floppy disks were a portable currency, and I imagined carrying around a set of programs in my pocket like a swiss army knife. The Matrix and the actual coolness it would bring to the internet were an eternity away in 1999.

I had cajoled and convinced my parents to get a PC by ~1996, and we had that dangerous entrance to the internet known as AOL by ~1997. Now I had access to the world, and I imagined myself a Kevin Mitnick or a Zer0 C0ol. Of course I didn't know the first thing about what I was actually doing, but I had drive and a mischievous intuition. I quickly found my way into various chat rooms, which led to deeper chat rooms, which showed people passing around pirated programs, known as warez, which I had always pronounced like Juarez but I'm pretty sure in hindsight was probably like a merchant's wares but with a z for cool factor. And in this scene, you were surrounded by magical little Windows applications known as proggiez or progz.

Proggiez were typically written in Visual Basic, with names like AOHell, HaVoK, and Fate-X. They were the swiss army knife on a floppy disk I had always hoped for. Progz had many uses, very few of them legitimate. There were phishing tools to try to trick users into giving you their passwords or billing info, there were scrollers that would flood chatrooms with text or ASCII art, there were chatroom responder bots, there were mass spam mailers, and there were punters. Punters sent html strings that would overload the poorly-written HTML parser in the receiver's AOL instance and kick them offline. Being kicked offline in the 90s was a big deal. It took several minutes to open up AOL again and log back in, even with a top of the line 56k modem. Soon enough, progz would also come with anti-punters to neuter incoming punt strings. It was an arms race.

Once I stumbled upon this subculture, I became obsessed. I downloaded every prog I could find, evaluating them functionally and aesthetically. I was a prog snob. As 90s fashion itself evolved from neon to black, progz evolved from big ugly flame-graphic buttons with 30 second intro videos by guys named XxHaCKeRxX to minimal cold blues and purples by lowercase unicode guys named dárk råïń or whatever. I was in love with every piece, and I wanted to be a part of it.

Visual Basic 6.0 Enterprise seemed to be constantly available on warez sites, so I figured I'd give it a shot. I wanted to build badly enough that having no idea how to write code was not going to stop me. Like all warez, it came in 30-40 sequential RAR files that unzipped into a single install with a registration crack. I found myself a library of basic proggie functions that other people had written and distributed. All I had to do was deconstruct this bizarre language and figure out how to make things work. I spent hours every day during that summer of 1998 decrypting the obscure language in these VB files, figuring out how everything worked, and translating it into building my own prog. I was designing my perfect UI, I was implementing & tweaking functions from .bas libraries; I was building a prog of my own. I even put several encrypted passwords on it for higher access functions. Of course, no one but me ever used this application, but I was damn sure to build in 5 levels of security and ensured that I was the only one who would ever get full admin access. I was the admin of my own prog, and I could punt people with my own custom HTML strings, I tweaked the scroller for hours until I found the fastest possible speed you could send text before you got rate limited and booted offline yourself. And I felt invulnerable.

Did I almost get my family banned from AOL for life? Sure, several times. Did I end up talking my way out of it every time? Also yes. Like everyone else, our way out of AOL's walled garden was by choice, spurred on by the wide availability of broadband.

All the learning I would do on this journey would set me on the course I ended up on later in life. With the right tools and free time, I was able to skate just above the line of getting in real trouble while learning core programming skills. Fundamentally, I'm still doing the same thing today as I did with those VB building blocks: start with something someone smarter than me built, reverse-engineer it until I understand it, and go off on my own. I'll be forever thankful for the access and freedom I had in those days, and will treasure that time I spent learning and making mischief.


Major shoutouts:

To this post by digital, the best reminiscence I've found of the progz scene and an inspiration to his post.

To this info dump of screenshots and information from that era.

To this list of progz, the closest thing I've found to a full list. Download at your own risk, though I'm doubtful any of the links even work. The names are definitely all real.

To this technical walkthrough detailing writing progz in Visual Basic 3.0. Seeing that old VB code and UI is bracing.

I recommend using archive.org to investigate broken links from the above.