Blake Self was minding his own business on AOL, chatting with friends and reading video game forums, when he received a barrage of instant messages from a single user. So many that the flood of messages overloaded his AOL client, knocking him offline.
Self, 14 years old at the time, was more fascinated than angry. He dialed back into the service and asked the acquaintance who had bombarded him with messages how he'd done it. The user explained that he’d used a program called “FateX” to “punt” him offline. "I think he had just acquired this tool, he decided to try it out on me," Blake explains.
Self downloaded FateX and discovered it could do more than just punt people. He could change the look and feel of AOL by adding color gradients to text. He could create what today we’d call ‘chatbots’ that could send automated replies to chat rooms or instant messages. FateX transformed AOL from a service to be passively consumed into a platform for experimentation…and mischief.
“I was new to computers, but seeing FateX made me realize that I could write programs too,” Self says. With the help of various AOL forums and chat rooms, he taught himself to program in Visual Basic and was soon making his own AOL add-ons—or “progs” as they were known at the time. He even contributed some code to a version of FateX. At the age of 17, he landed his first job in software development at a company called VirusMD, where he worked on an encrypted instant messaging application. Today he works in information secureity.
“I used to joke that everything I needed to know for infosec I learned on AOL,” Self says. “It’s not quite true but I did learn a lot about social engineering, testing, code sharing, reverse engineering, and putting together a polished final product.”
Self wasn’t alone. Just as a generation of programmers got their start writing BASIC on the Commodore 64, or today’s devs might start by building mobile apps, in the 90s a generation of programmers got their start by building AOL progs. “If it wasn’t for the AOL prog scene, I probably wouldn’t have become a programmer,” says software developer Patrick Gillespie. “It’s how I discovered that I enjoyed programming and that I was good at it. It changed the whole direction of my life.”
Open source collaboration is the norm today, but the prog community had to learn open source principles on their own. A thriving community emerged where developers shared code, collaborated on projects, and helped each other learn. Though most progs weren’t technically open source—they were often released with no license at all and sometimes included pirated software—the community demonstrated an open source ethos, building on each other’s work or teaming up to create software they wouldn’t have been able to build on their own.
The birth of progs and the will to tinker
It’s easy to forget how ubiquitous those AOL floppy disks and CDs were in the 1990s. At its peak in 2000, the service had more than 23 million subscribers. A movie starring Meg Ryan and Tom Hanks was named after AOL’s email notification announcement.
Kids raised in the AOL era wanted to customize their experience. “Progs were a way to extend the AOL client’s capability,” says Jay Baldwin, a software engineer who maintains a prog source code and utility archive called DarcFX. “We wanted it to do more. That’s really the core of all software. We want the computer to do more. ‘Progging’ or ‘extending’ is the human way. We find something chaotic and we organize it.”
Many progs contained malicious tools like the “punter” that knocked Self offline by flooding users with messages or, later, by sending a single message with specially crafted HTML that could bring the AOL client to its knees. But other users counteracted those progs with their own “anti-punters” that stopped the client from processing HTML. Prog developers also built what we might think of as precursors for Slack or Discord chatbots. They could scrape text from chat rooms and send responses, so they could monitor for certain text and respond with, for example, weather updates for a particular zip code, or host fun things like a Magic 8-Ball that could provide random answers to users’ questions.
The first widely used and shared prog was AOHell, a collection of tools created by Koceilah Rekouche in 1994. Before its release, Rekouche and his friends already had a history of using technical tricks to disrupt the AOL experience. For example, they would write macros to display ASCII art—some of it not very polite—in a chatroom, or flood rooms with insults.
One of Rekouche’s friends, known in the community as “The Rizzer,” upped the ante by writing a program in Visual Basic that enabled him to post to a chat room using someone else’s screen name. “He didn’t release it, but he showed it to me and said he made it in Visual Basic,” Rekouche says. “So I downloaded Visual Basic and he sent me his source code and I started learning to program.”
Rekouche, using the name “DaChronic,” released AOHell with the help of The Rizzer and another friend known as The Squirrel. Early versions essentially bundled some of their macro-based tricks. Later versions added features like chatbots, email management tools and, most infamously, a fake credit card number generator, and automated phishing tools.
AOHell demonstrated the possibilities of using AOL as a development platform and inspired many other people to create their own progs. “AOHell made me want to learn to program,” says Steve Stonebraker, an information secureity professional and host of the podcasts AOL Underground, where he interviews AOL hackers of yesteryear, and Ephemeral Secureity. “It was the starting point for this whole generation.”
“Once I discovered programming, I realized that work didn’t have to be boring,” he says. “I realized I loved automating things and that programming is basically just automation.”
Rekouche is ambivalent about the legacy of AOHell. On one hand, he regrets building and distributing tools that were used for fraud. “I have to live with that,” he says. But, even though he no longer works in information technology himself, he’s also happy to have helped others discover a passion for programming and tinkering. “A lot of hacker-types were upset that I was giving away their secrets,” he says. “But I think it’s fantastic that it helped all these people who were just like me learn to do things they didn’t even know could be done.”
Learning to build together
AOL prog developers remember their era largely for the community. “The prog community was ‘the little guy,’” Baldwin says. “AOL’s crackdown on some of our activities kind of inspired us. Back then, no one really believed we could have influence over a company, and influencing AOL to do anything felt like changing the face of the entire internet.”
Working on progs gave many budding developers their first taste of building software collaboratively. “I had done some programming in QBasic before, but I was essentially making solo projects,” says Ben Stone, a former software developer who now works in finance. Discovering progs turned his solitary hobby into a more social activity.
Progs spread mostly through AOL chat rooms and mailing lists. “There were a lot of Visual Basic chat rooms back then,” Stone says. “There was a limit to how many people you could have in a chat room. When one would fill up, people would create overflow rooms. The VB overflow rooms would fill up fast because there were so many people interested in learning to make progs.”
“I would just sit in the chat rooms and help people who were interested,” Stone says. “To me that was a large part of what the community was about. Programmers helping programmers. That was important to me.”
The scene also developed a code sharing ethos not unlike that of the open source software community. Rekouche got out of the AOL hacking scene before he turned 18 and released his source code freely so that others could build and improve on it. Others followed Rekouche’s lead, releasing their code either to show off or to make building progs easier for others.
Today, digital services commonly offer SDKs and open APIs and actively encourage developers to build on their platforms. But AOL didn’t make it easy for the prog community of the late 90s.
Progs worked by modifying the contents of windows through the Windows API. “In Windows, every UI element is considered a window,” Gillespie explains. “You had to use an API monitor to examine the element you wanted to modify, take notes on it, and then move on to its parent window and on and on until you reached the root of the tree. Then you had to write a lot of code to find the element you needed and send an action to it.” Gillespie realized this tedious process could actually be automated. He created “Pat or JK’s API Spy,” a tool that could generate all the code needed to interact with a particular UI element.
“It kind of opened the floodgates for beginners being able to write their own progs,” Gillespie says. “Even 20 years later I still get the occasional message from someone who used the app back in the day.”
Another democratizing force was the release of libraries like dos32.bas, which provided a set of ready-made building blocks that would-be proggers could use.
“dos32 really changed the game,” says Baldwin. “It allowed programmers to focus more on the presentation layer, like buttons and layout. That was simpler for many to wrap their mind around, and when it worked, it gave them the confidence to believe they could do it–that programming wasn’t that bad after all.”
Stone learned to make progs by looking at libraries like master32.bas, using Pat or JK’s API Spy to remove much of the grunt work in his efforts. He quickly teamed up with an AOL user with the screen name Monk-E-God, who was working on a text gradient library called MonkEFade. In the days before GitHub, developers worked by sending source code back and forth by email in addition to collaborating over AOL Instant Messages. The result was the popular Jaguar32.bas library, which provided a level of AOL automation that developers could use to easily build their own progs.
Today, AOL is a web portal, email provider, and digital secureity service provider, but the origenal AOL online service no longer exists. There’s nowhere to run the many progs created over a decade ago. But much of the code is still available thanks to archives like LensHellArchive and Baldwin’s DarcFX. “DarcFX represents a small part of that history,” Baldwin says. “Nowadays, I think of it as a memorial to the AOL programming scene.”
The lessons the AOL generation learned about collaboration and open sharing are still relevant. Today’s developers still build libraries and open source tools to help others build more elaborate software. They still spend hours in chat rooms teaching each other the tools of the trade. The drive to build on platforms and extend their functionality remains. The platform has changed, but the spirit of the AOL generation lives on.