Archive for November, 2008

The Most Terrible Thing I Have Ever Done

Saturday, November 15th, 2008

We’ve all had our periods of juvenile delinquency, ranging from relatively minor rebellion to life-changing acts of blind defiance. Sometimes these formative passages become the drunken tales of our adulthood, proof that there was a time when we were fearless. Other tales remain hidden, though, as the bravura is eclipsed by regretful stupidity. So now is the time for me to come clean and confess. Prepare yourself.

Date: Winter 1983/84
Event: My first personal computer

The first wave of the video game bubble was yet to implode. While I was busy exhausting the playability of the Atari 2600, one of my friends had acquired the infinitely superior ColecoVision. ColecoVision was truly the next evolutionary step for the home gaming system. It included a version of Donkey Kong that actually looked like an arcade game. Real graphics! Round dots! Mario in an actual outfit (vs. the beige roadkill Mario of the 2600)! Holy freaking crap!

Unfortunately, I didn’t live in a household where I could sweet-talk my parents into buying *another* game system. My 2600 had been my big Junior High graduation gift. I wasn’t about to get another system just a year or two later. But I was also being left behind, and there was no way I could wait until my next graduation in 1986. Something had to be done about this. I needed to formulate a plan of persuasion.

My first foray into programming was Basic Programming for the 2600. It was just another 2600 cartridge, but it did come with an archaic set of keypads for entry, forcing one to cycle through typing (just like texting on a cell phone). I wrote a classic depth-charge game. I think everyone who programmed during the 80s wrote this game at some point. The rectangular block moving across the bottom of the screen is a submarine. You are floating near the top of the screen, a battleship (another rectangular block). You drop a depth charge (a square block) and try to time it so that it strikes the moving submarine. That’s it. The crappy thing about this approach to programming was that there was no saved memory. I had to type in all the “code” for the game every time I turned on my Atari (all 9 lines of it, having only 128 bytes (not K, people, BYTES) to work with). These kids today really don’t know how good they have it.

Back in 1983, most of us gaming enthusiasts relied on magazines to discover all of the industry dirt. Coleco was sweeping the market at that point. One could no longer be the envy of the block with 2600 Pac-Man or Asteroids (I remember when both of them were released, running to a neighbor’s house just moments after the word blasted over the block that he had Pac-Man, was playing Pac-Man that very moment, and crowding into his living room with everyone else from the block, gazing onto one of the ugliest video games ever created, absolutely rapt – this was truly the bubonic plague phase of Pac-Man Fever. It was rumored that the rich kid who’s grandparents lived in the big yellow house on the corner owned a ColecoVision. This was the same kid who had Atari 2600 Asteroids back in the day, but no one had been invited to sit in his living room and gape. We would ride our bikes up to the corner and stop, staring at the yellow siding, wondering what kind of titillation was causing the curtains to glow in that phosphorescent rainbow. Lucky bastard.

The only people I personally knew who owned a ColecoVision were these brothers from church, who’s parents bought them one after their house burned down. Lucky bastards.

(Disclaimer: Yes, the theme of this entry is “confession of terrible juvenile acts.” No, I did not attempt to burn my house down in order to obtain a ColecoVision via the insurance settlement.)

By mid-1983, the magazines were touting a new add-on for ColecoVision – the ADAM computer. You just plugged this contraption into your ColecoVision and viola, a full computer system, complete with data storage, keyboard and a printer. Coleco was also offering a stand-alone version that would play all ColecoVision games. All of them, dammit. More amazing, though, were the ADAM-specific games. Donkey Kong with all the levels, including the intro animation. The real Zaxxon, with actual sharp diagonal lines of graphics and six colors instead of two. This was to the ColecoVision what the ColecoVision was to the 2600.

It became the object of my unremittent gaze.

It took six months of campaigning, showing off my stupid depth-charge game to demonstrate the possibilities of a “real” computer, before I was able to broker the loan/advance/co-operative payment necessary to bring the machine into our household. By early 1984 (after having to return a defective unit the day after Christmas, wading through the mobs of Cabbage Patch Freaks who were sucking the oxygen out of Toys R Us), I had the beige plastic metropolis sprawled out over my desk – gaming, computing and printing.

A word about the printer. The power supply ran through the printer, so you were married to this 20-pound behemoth. It used a daisy wheel, striking letters onto the page through a plastic ink ribbon, so it was effectively a massive typewriter. I wrote several high school papers using the ADAM, and they all looked beautifully and perfectly typed. The added “feature” of the printer, though, was that it was also an Immersive World War II Combat Simulator. Every time I printed as little as one page, it was the equivalent of storming Normandy, sloshing across the blood-soaked beach as the damned krauts fired, “chunk-a-chunk-a-chunk-a”, from their hillside barricades. It was war, dammit, and it wasn’t pretty. If you stayed in the room while it printed a three-page paper, you would definitely have a headache after that ten minutes. I remember one miserable evening when I was trying to print out a final paper while my dad, who worked nights, was sleeping just on the other side of the wall. Working nights meant that 8pm was actually about 4am in his circadian alternate universe, so most of my nights were both fatherless and silent. My desperate smothering of the printer, using a stack of pillows and blankets, was futile. Pillows are no defense against relentless Nazi air-cooled machine guns. The windows rattled, my head exploded and I spotted enough typos to necessitate three drafts/missions. My mother poked her head in at two-minute intervals to dose me with admonishment and guilt. It was the last time I would attempt to print after sundown.

The ADAM came with SmartBasic. It was essentially the same as AppleBasic, only with different memory addresses, so PEEKs and POKEs worked differently (there are three of you readers out there who are nodding right now – for the rest of you, I’ll explain this stuff in a little while). I eventually grew tired of Donkey Kong and Buck Rogers, demanding something more creative and interactive, something more like the LEGOs of my youth (okay, I still have the damned LEGOs). In one fateful weekend, I locked myself in my room and taught myself how to program in Basic, neglecting nourishment to the point where I had caught a cold by Monday. This wasn’t the lame pseudo-Basic of the Atari 2600 cart. This was the real deal, and I was soon printing my name across the screen in infinite loops that strobed through disco flashes. Next up was the almighty bubble sort.

The ADAM was ultimately a heap of marketing failure, dead just two years after its debut (as the entire video game industry went down the toilet, the wasteland calm before the Nintendo storm). I was not only the first and only person on my block with one of these machines, I was generally the only person in the south suburbs of Chicago. This marked my initial foray into the risky world of the Early Adopter. I would later invest in many other auto-tanked technologies, of which my living room is a power-sucking museum. DBX noise reduction (effectively creating audio cassette tapes that no one else could play . . . but they sounded awesome . . . in my bedroom). The Laserdisc. The Sega DreamCast. Most recently, an HD-DVD player (obviated just six weeks after purchase). Lots of money for formats that self-destructed. I also bought my first CD player in 1985, and my mother likes to recall that, even as she told me I was wasting my money, I lectured her that it was the format of the future. A year later I bought one of the first “portable” CD players, the Technics SL-XP7, so heavy that it required a shoulder strap. And I owned a DVD player before anyone on my block. Well, I was living in Chicago at that point and didn’t really know anyone on my block, but if everyone I knew lived on one big block, then I still would have owned the only DVD player on the block, dammit. So sometimes the early adopter strikes gold, and other times it’s just petrified crap.

My personal experience with the ADAM, though, transcended any obsolescence. I taught myself the basics of programming, and I became the first person in my high school to ever test out of a computer class. I was on my way to nerd royalty, which meant bad hair, questionable attire, no girlfriend, and great respect among ten other computer-savvy nerds. Back in 1984, it wasn’t cool to be a nerd. There was no actual romanticized-bullshit “revenge” of us nerds. It was all misery. The world pushed us into our gutter, where we thrived like bacteria in a Petri dish. But we were still bacteria. Unlike some other nerds, I wasn’t so self-obsessed as to not notice this. I was often an embarrassment to myself, going through my first couple years of high school generally friendless.

As I struggled through puberty, I struggled against the person I was becoming. I didn’t belong to the normals, yet shunned the nerds, rejecting both Band and German Club. During those first two or three years, I didn’t have much respect from the teachers, either. When you spend all of your energy wishing you were someone else, wishing you were the popular vote, you can forget to use your brain for anything else. I was a soft-spoken shimmer of unrealized potential, hardly worth the attention of my teachers and peers. Then I met Brian.

High school can be a self-esteem obstacle course, with enough pain and confusion to transcend all demographics. Brian didn’t really show it, though. He wasn’t one of the quiet nerds. He was friendly, sometimes even bubbly. His older brother was a super-cool jock/thespian who later turned me on to The Cure and the Dead Kennedys. Brian was one of those everyman smart nerds. Innocuous. Visible, yet not obnoxious. Easy to please. I’m sure he had the self-doubt, the wandering identity, but that didn’t seem to extrapolate into the typical self-loathing, all-consuming narcissistic myopia, or the general inability to communicate with other human beings, or the terrible disconnect from bathing and hygiene.

I’m not sure how Brian and I started our extracurricular friendship. It might have sprouted from a discussion of music, but before we met I generally listened to the Rolling Stones, Styx and REO Speedwagon. After we met, I started listening to Duran Duran, Howard Jones and Art of Noise. It was more likely that we bonded over one of the Shatner Star Trek movies. Star Trek is the time-honored glue of any given nerd community. In fact, I doubt that adolescent nerds as we know them really existed before the 1960s. The term sprouted out of the 1950s, but it was synonymous with “square”. Nerds were blank, boring, unhip people, devoid of personality. Post-Star Trek, they became a community. They formed clusters and yammered on about Trek, sci-fi, wizards, math/computers/science, and other embarrassing topics. They unfiltered themselves. So, basically, if it wasn’t for Star Trek I might have had a respectful, non-nerd, only semi-embarrassing high school career. Instead, I’m running around shaking my fist and yelling “Kahn!!!!”

I suspect that it was the ADAM that brought us together. Brian has always been a sucker for new tech, surrounding himself with blinking lights and Early Adopters. The nice thing about being the Friend To Early Adopters is that you can try out the cool gadgets, wait a bit to see if your friends got burned (sometimes literally), and then buy the stuff that survives. So I brought him home to marvel over the high-speed cassette drive, the typewriter-quality WWII-Simulator/printer, pseudo-AppleBasic programming on a non-Apple computer, and Donkey Kong with all the levels. Brian later brought me over to his house, where I witnessed multi-sibling dynamics, thumping and tangible bass in music, and my first blinking, bleeping modem via his superior Commodore 64. Soon enough we were going to movies, record stores and the mall, creating mix tapes and posting nerdy comments onto bulletin board systems from his cool C64.

I soon picked up a C64 of my own, reverting back to the same justification-of-purchase that resulted in the ADAM. It was a powerful tool, with a whopping 64K of memory, allowing for new levels of programming complexity and multimedia creativity . . . and it had cooler games. Better yet, it was my gateway into the world of piracy! These days, piracy is so rampant that it’s really a matter of how egregious you choose to be. It is a given that some programs can be simply copied (has anyone out there actually plunked down the $500+ for Photoshop?), and most people share music or video on some level. Digital objects are like daisies in a field. It doesn’t matter who owns the field, and plucking a few of them as you pass by has next to zero impact. Back in the mid-80s, piracy was a completely different beast. Most of us had started playing games on cartridge-based systems such as the Atari 2600. It was possible to copy those games onto EPROMs, but that could cost just as much as buying a new game, so that avenue was left to the electrical hobbyists. Everyone else was generally satisfied with shelling out $20-35 1982 bucks ($40-$70 in 2008 dollars) for a cartridge. However, you should remember the 2600 version of Pac-Man, as mentioned above. Remember? We all insisted on paying top dollar to pollute our lives with that crap. Most people were disappointed on some level, but we still played it. Unfortunately, that sent Atari the wrong message. They subsequently created some of the crappiest video games ever, assuming the stupid public (and yes, we were stupid) would gobble them up. E.T., notorious as one of the most frustrating and unplayable video games in history, is considered by some folks to be nearly single-handedly responsible for crashing the video game market in 1983. I think it did a lot more damage than that.

Even though Atari ended up burying millions of unsold E.T. cartridges, they initially sold the game at Pac-Man level prices. Millions of suckers were taken in by the hope of eating Reese’s Pieces and role playing the adventures of their beloved, hairless, animatronic, home-phoning space pal. Millions of earthlings were burned, many getting their first sour, metallic taste of paying $35 for a soul-sucking hunk of plastic. The burns of 1982 and 1983 stuck with us. We not only stopped buying games, we stopped trusting that any given game might actually be good. Worse yet, we witnessed the bottoming out of the market, with the very same cartridge selling for $4.99 in a K-Bee Toys bin just a few years later. It quickly became evident just how much profit was being made from the $35 games.

When gamers started using computers as their platforms, the software was truly soft. Floppy, in fact. The cost of making a copy of a game was minimal. A blank floppy might have cost two bucks, while that same floppy with a game written to it, and perhaps a colorful label, was in that $35 dollar range. The original pirates didn’t copy games just to steal them, though. They copied them as revenge for Atari’s gouging and burning. They copied them because E.T. had destroyed their trust. That damned little neck-extending, chest-glowing freak had forever soiled the relationship between gamer and producer, creator and consumer.

Piracy rapidly escalated, so the game producers had to create various tricks to make their games harder to dupe. One particularly fun copy-protection scheme was the deliberate writing of errors onto the floppy. Normally, a copy program will try to correct for any errors it encounters. Many games were programmed with specific disc errors, so the non-error copy would simply not run, as the games wouldn’t detect the magic key of their specific errors. Most of these errors caused the head on the disc drive to rapidly bounce back and forth between the position of the error and the “home” position, checking the floppy’s directory. It was as if the drive was constantly having to double-check the directory to make sure it was supposed to read that error part of the floppy, constantly verifying the madness of blatant disk errors. On a C64, this resulted in yet another loud Word War II Machine Gun Simulation, as the read/write head slammed back and forth. Pretty smart, yet it also made the game companies look like assholes, as they were endangering the integrity of our equipment just to stop us from copying their games. And, of course, it didn’t take long for someone to figure out how to write a copy program that would also copy the errors, machine gun beachhead storming and all.

Brian had one of those magic programs – Fast Hack’em. In 1985 and 1986, Fast Hack’em was the king of all C64 copiers. For the price of a $30 program, you could distribute copies of just about anything. This included Fast Hack’em itself, so most of us didn’t even bother paying the thirty bucks, snotty bastards that we were. While there was some online downloading, most of the time you just found someone who owned a game, or had a copy of a game, and then made your own copy. The distribution was very physical, which meant that nerds and gamers formed social clusters based solely on copying each others’ games. Brian and I formed the first public computer club in our home town of Park Forest. It essentially involved a bunch of C64 owners gathering in a dimly lit back room at the public library, chaining floppy drives together and mass-copying each others’ games, thumbing through gaming magazines and the latest issue of COMPUTE!’s Gazette while waiting for the data to machine-gun transfer. There was little discussion of programming or operating systems. In those days, people didn’t tweak their operating systems, as there were no hard drives – you turned the computer on, and that was it . . . the salad days of simplicity. Currently, tech-savvy people tend to be forced into “computer expert” roles by friends and family, suckered into rebuilding broken Windows, re-establishing friendly negotiations between the CPU and printers/scanners/cameras/etc, and deciphering the fractal abyss of over-the-phone troubleshooting. Back in 1985, I was definitely the “computer guy” of my extended family, but all that meant was me showing up at their houses with Fast Hack’em and dishing out free games wholesale. I was a connected guy, someone good to have around.

Back at school, I had become firmly entrenched into the nerd sphere. I saw myself as a pretty smart, capable person, yet, in the social web, I was trapped in the unnoticeable fringe. This was encapsulated in a single moment, in the locker room, after PE. No, I wasn’t attacked. I wasn’t that type of nerd. No one bullied me because there wasn’t much of a point to it – I didn’t make waves and I rarely spoke. Ron, one of the medium-popular guys (generally only popular because his dad was the Village President of Park Forest, so he had the resources to host awesome parties, or so I had heard), got into some sort of conversation with me. After a moment of contemplation, he said, “you know, Brucker, you’re pretty cool . . . I mean, for one of THOSE people . . . you’re the coolest one of those people.” He said this with such sincerity that, as insulting as it was, I was touched. The guy made an honest effort to say something nice, something accepting, but, well, the trouble was that I wasn’t really a human, so it came across as a gesture, petting the stupid dog that just licked your cheek. Right now, as I type this, I am noticing for the first time the irony that Ron, the objectifier, was also black.

As personally conflicted as I was, I did manage to stop being stupid. It began with testing out of the basic programming class, then cruising through the remaining computer classes, learning Pascal, finally developing an independent study class of my own and teaching myself FORTRAN. I know . . . why would anyone *want* to learn FORTRAN?

(FORTRAN was my first exposure to a strongly-typed programming language, which means that I had to declare and type every single freaking variable at the top of the code. Plus, it didn’t use the happy-go-lucky friendly syntax found in basic. For example:

if ( md <= 2 ) then itipv = 0 jwit = jwit0 do iip = 1, nip jwit = jwit+1 call idlctn ( ndp, xd, yd, nt, iwk(jwipt), nl, iwk(jwipl), & xi(iip), yi(iip), iwk(jwit), iwk(jwiwk), wk ) end do end if

Okay, I get it, yep, if this, then that, and do something, whatever that means, and call . . . call . . . what the hell is that?!)

(Sample code lifted from this via a Google search - I no longer have the little FORTRAN programs I wrote in high school, as they were on 8-inch floppies, using a CP/M OS . . . yes, to the three of you out there, I just heard your nerd-snorts of recognition.)

Basically, I wanted to conquer new territory, and I had outgrown my teacher. Simple assignments, such as "create a phonebook database," became "write the database app in half an hour and then spend a week creating a fun little graphic animation for a hit list." For every idea I learned, I quickly grew bored and insisted on building it into something else. My school persona was not that of the game-swapping Fast Hack'em Guy. I started exploring the role of Entertainer, just a step away from Rouser of Rabble.

Programming is a blend of logic and art. Sometimes you can take the LEGOs approach (LEGOs being the preferred childhood building-block of nearly all programmers). Build something for the sake of building. There is still creativity involved, and often a lot of intellect, but there is also this self-contained thought process. Those programs aren't written for real people. They are proofs of concept, just as Lego creations are things that you build for yourself, in your home, perhaps showing them off, but never actually giving them away to someone. When you start programming for an audience, though, it can transcend creativity and merge into art. It's not enough to read a database file and print a bunch of names. Why would anyone find that interesting? Why not play a little song, show some graphics, turn it into an actual interactive experience? Maybe someone would like to play a little game, or live in an imaginary world for a little while. Instead of just building a Thing, you could create a Connection.

Most of the things I shared with Brian were rudimentary text-adventure games along the lines of Zork. Walk through some mysterious house and try to find the exit, or treasure, or a person, or whatever-the-hell. I eventually became more interested in statistically-generated melee scenarios. Using the Apple IIe at school, I wrote a text-based game in which you fought an endless array of monsters, each with many facets and attributes, so that you would have to decide what types of attacks would be most effective. I created a small database with a bunch of goofy creatures. I allowed the player to summon familiars ("conjure a shrew"). It attracted the attention of nerd school-mates other than Brian, and it had an incredibly catchy title: "Doctor Destructo's Arena of Battle". Yes, my brain power was developing a bit faster than my maturity, and my nerdness was flourishing. I was embracing my identity of being one of THOSE people.

Brian was much more interested in configuration and general technology. He knew about all the latest neat-o programs, as well as how to get under the hood of most simple operating systems. There are some folks out there who have been able to be both programmers and systems people, but I have found that there is a general split between the two, similar to the split between graphic designers and programmers. I was never that good at the systems stuff. I just wanted my sandbox, and I didn't care where the sand came from, or what materials comprised the box, or how rectangular the box could be, or even what brand of scooper and pail to use, as I preferred the direct connection between brain and hands.

Meanwhile, the high school computer lab (a room with about 10 Apple IIe computers, along with a Trash-80 in the corner) was just becoming redefined into the current version of a lab. That is, students were coming in there to type out homework for low-level- and non-programming classes. The AppleBasic classes were becoming more popular, so there were more people to impress with the prowess of Doctor Destructo. However, those students weren't really nerds. They were taking programming as just another class, so the homework was just an extension of math, just busy-work problems to dispassionately work through. The division between the Normal and the Nerd had infiltrated my comfortable turf. Again, my identity slipped gears, and I felt like a stranger in my own home.

I promised a tale of juvenile delinquency. We have now arrived.

Brian and I used to play around with PEEKs and POKEs on both the Apple and the C64. Basically, these were commands you would use in Basic to take a look at specific memory locations and alter them. You PEEK at the value in the memory, receiving some weird number. You could then POKE that location with a different value, directly altering the memory. Sometimes the effect is nothing, while other times it can be like tickling the bottom of the computer's foot. People with enough knowledge of the memory structure of a computer system could do a lot of manipulation using PEEKs and POKEs. On the C64, I used this to "shake" the screen when someone walked into a wall in one of my text adventure games. On the Apple, you could make a variety of click and beep sounds, and then rapidly alter the number of these sounds to create frequencies, notes and actual music on a system that was built only for beeps. This was a boon to game designers, and resulted in the ultimate tweak of Apple sound, Castle Wolfenstein, which included actual speech (well, just the garbled "Sich Heil!" screaming of Nazis before you gunned them down . . . again with the Nazis).

One day, Brian discovered a particularly interesting POKE that allowed you to disable certain keys on the Apple. It was one of those snickering, "ha ha, look what I can make it do" things that generally doesn't have a practical use. Unless, of course, you discover that you have been slow-brewing a grudge against the rest of society.

In high school, back before social networking, "society" was generally limited to fellow students, teachers, parents, and a few of the stores and businesses one frequented. Every other facet of human existence was an abstraction. So, in society, I was one of THOSE people, and nothing else. But I didn't even like most of THEM. One pseudo-nerd who I particularly hated was Terry. He was a skinny little annoying big mouth, a gamer who lingered about the lab and pretended to know things he didn't. A general village idiot, he was only a nerd on the basis of being incredibly funny-looking. Being a big-mouth, he managed the tarnish whatever esteem was left to the nerd image. He was a divider and jackass, driving me further away from my only identifying group.

Being labeled and categorized forced me to consider everyone else according to their obvious roles. I was surrounded by jocks, thespians, cool people, and quiet folks who I probably wouldn't like anyway. I didn't really resent society. Or, I didn't think I resented it. But I also had such a tenuous grasp on my own identity that I quickly fell into the typical adolescent trap of defining yourself by the things that you abhor. I knew who I was only because I knew of all the groups where I didn't belong. Sort of like Religion, that other insulated micro-society.

Nearly every destructive technological advancement originated as a simple proof-of-concept. Think of the scientists of the Manhattan Project. I doubt that this was a band of evil misanthropes. These were just LEGO people, working out their complex ideas, giving birth to their creativity. Most high-tech weaponry, from ninth-century gunpowder to modern wire-tapping, started with this seed of I-wonder-if-I-can-do-it. Curiosity is fundamental to the scientific and creative mind.

So I started to think of an interesting use for that POKE. First, disable the CONTROL key. This key was essential to allowing a user to break out of any given program. Combinations of the CONTROL key and Escape or Reset would either break out of a program, or reboot the machine. It was quite common, when sitting down at an Apple IIe, to do a quick Ctrl-Apple-Escape to clear out any program that might be running, returning you to the operating system so that you could access whatever was on your floppy. If there was no CONTROL key, the user would be forced to physically shut the machine off in order to clear out the memory and restart.

I combined this with a little side project I had been playing around with: JimDOS. JimDOS was just a shell that I had written in AppleBasic, just a shorthand for common disk functions such as looking at the directory, deleting files, etc. It really wasn't any kind of improvement on the regular operating system. It was just a proof of concept, a way to screw around. And, being an adolescent, I added fun little witticisms that would accompany various commands, such as "screw you" or "ha ha". I eventually created some needless complexity to the shell, including the mimicking of AppleBasic. So, within this Basic program, you could write a simple, "Hello World" type of Basic program. Not much of a use for this, but it was a fun way to tinker.

I tinkered my way into combining the removal of the CONTROL key with JimDOS. Now you were stuck with JimDOS (unless you typed the special command that would cause JimDOS to end and return you to the normal world). Then I took it one more step, into the realm of Evil.

People use computers to do three types of things: Good, Evil and Gaming. I had started with Gaming, the general gateway into all computing. Then I flourished into the land of Good, learning programming languages, helping family, solving the programming problems of my classmates. Unfortunately, fueled by the relentless energy of youth, unrestricted by any care for my micro-society, I moved on to Evil. Wouldn't it be cool if JimDOS rearranged some of the expected behavior of an operating system? I know . . . many of those Manhattan Project scientists said "wouldn't it be cool" at one time or another. I had to see if it could be done. So I took some of the basic commands, such as PR#6, Run, Brun, Load, Bload, Save and Catalog, and made them do other things. Specifically, any disk-based command would be reinterpreted as an INIT command. You use INIT to format a floppy and turn it into a boot disk. The boot disk requires some sort of "hello" program that the INIT will write to the formatted disk. So I had it INIT any disk that was in the drive, writing its own JimDOS program to the disk. I also changed the name of JimDOS to "fun".

So let me clarify all of this. If this program was running on a machine, it would appear to be a normal computer, and you could even write a little Basic program within it. However, anything you normally did to access the floppy drive would result in the erasure and formatting of whatever non-write-protected disk that was in that drive, and then the writing of my program to that disk, so that the next time the system is booted from that disk (a typical activity back then), you would be stuck in the program that would then erase and write itself to whatever disk was next in the drive.

I had written a virus.

The evil part of this was that the formatting process was initially indistinguishable from any normal disk operation. The drive usually made a few funny sounds whenever you would look at the catalog, or run a program or whatever. And it only took a few seconds for the directory to be wiped from the disk, for the contents of the disk to effectively disappear, so by the time someone would realize that the catalog was not appearing, that something was amiss, it would be too late. Whatever was on the disk would be, in effect, gone.

Okay, that's more of an evil concept. What I did next was an actual act of Evil. My independent study took place during the last hour of the school day, so I was usually just hanging out in the lab, a wallflower in the corner, monkeying with my FORTRAN. There was usually a five or ten minute window after class ended, during which everyone else would leave, after which the Normals would start showing up with their homework. So one day, during this window, I rapidly installed and ran "fun" on all the Apple IIe computers, and then returned to my Trash-80 FORTRAN station. Students started to slowly trickle in, plopping down into their chairs, getting ready to headache their way through such terribly difficult homework as getting their names to display on the screen or printing out a sorted list of ten names.

This is a good time to queue up the song Iron Man. Are you familiar with Iron Man? My father introduced me to Black Sabbath, so Iron Man was a commonly played song in our household. Go ahead and read the lyrics. It's basically a tale of revenge. A superhero is persecuted ("nobody wants him"), and then, "planning his vengeance," returns to kick everyone's ass.

These people, as represented by Ron, had objectified me into one of THEM. My natural reaction was to return the objectification. These insiders, these Normals were nothing to me. My corner Trash-80 workstation was an observation booth, where, detached from any of their emotions or humanity, I could observe the fruits of my work. A floppy drive spun into action. Then another, and yet another. While the third and fourth people were typing in their Load and Catalog commands, the first one started to scratch his head, wondering why his homework wasn't appearing. My heart rate tripled, but I didn't dare stop typing or look away from my monitor. Soon, all of the drives were spinning, taking much too long. Something was terribly wrong. My "fun" program worked perfectly. Chaos reigned.

I should have been the obvious culprit. I was always there in the lab at the end of the day, and I knew more about this stuff that most people in the school, including the computer science teacher. I was also so disenfranchised and quiet that most of them didn't consider me a threat. I was the anonymous smart guy who was off cooking up his own experiments in some weird programming language that no one understood, much too absorbed in whatever smart-guy stuff I was doing to take the time to wreak havoc. Smart people were the Good Guys, and most people only knew of the Good and Gaming options for computers. This was their first taste of Evil.

It wouldn't have taken long for the teachers to put it all together, though. Once they really dissected my program, they would have realized that someone had to quickly install it on all those machines. My elation over the successful experiment quickly soured into dread of my imminent prosecution. This was the lesson of Evil, the inevitability of karma.

Then a funny thing happened. Remember Terry? Big-mouthed, bug-eyed, dumb-assed Terry. Within a few days, word had spread about "fun", and, even though it was Evil, it was also a terribly effective proof-of-concept. It was a programming coup. For some reason that I will never truly understand, Terry decided to claim credit. He didn't directly say that he wrote it, but he started acting like he knew who did. Maybe he wanted to suck up to teachers, lead them to believe that Smart Terry was on the case. The trouble was, no one else had any idea who did this (except Brian, of course, and he would remain my silent partner). When no one confessed, Terry started to change his language from knowing who did it, to knowing how to do it himself. He opened his big mouth just a little bit too much. The teachers weren't certain that Terry did this, but the students who lost all of their homework decided that Terry was their man. He was regularly pummeled for weeks. At one point, he was suspended for fighting. This was like catching a gangster by focusing on tax evasion. The teachers couldn't prove that Terry wrote the virus, but he was the only person acting like he did it, taking the credit, so they busted him on fighting, even though he was the one getting his ass kicked.

This had become the Tommy rock-opera version of Iron Man. It was epic. I had succeeded with a somewhat weird proof-of-concept. I was able to sit back and watch the terrible effects (modern virus hackers are rarely, if ever, able to witness their damage in person). The annoying big mouth destroyed himself in the process. The idea of Evil had radically changed. Karma was simply a matter of perspective. One could actually be rewarded for doing something terrible. Welcome to the 1980s.

I had completed the transition, years in the making, from the innocence of Donkey Kong and Asteroids, the kid who's t-shirts were emblazoned with Pac-Man and Doctor Who, to the borderline-psychopathic emotional detachment of electronic terrorism. I was at one of the great crossroads of life. Criminality could be rewarded, and a life of vengeance would extend the pulse-tripling rush. Would I continue my transformation into Iron Man?

Iron Man probably didn't have much of a social life. He probably couldn't go to a movie without shooting a bolt of lead through the screen. He certainly didn't hang out at the mall, except when he was there to boil his vilifiers in the public fountain. Unlike Iron Man, though, I had a friend in Brian. Through him, I met other close friends, and through them, I eventually had a few romantic relationships. Like a sugar rush, vengeance burned out in a hurry. Friendship, though, was stability.

Being a lot smarter than Terry, I decided that the safest way to proceed was to put an end to the experiment. I never wrote another virus, and I made sure that the only people who knew about this were Brian and myself. I advised the teacher to have all the students shut down and manually restart the computers to completely clear out the memory. It's what they should have been doing in the first place. Yes, I was an agent of Best Practice. A part of me was sympathetic to those people who lost their work. Yet I also considered them to be dabblers in something that, for me, was a passion. My limited sympathy did not trigger regret over my achievement.

The next year I went to college and burned myself out. I was exposed to a crappy computer science program, and lost all interest in programming. It took me another 15 years before I would actually want to creatively express myself in code, and by that point I had lost much of the relentless energy of adolescence. My juvenile delinquency taught me a valuable lesson, though. I was able to directly witness the effect of unrestrained proof-of-concept. I'm generally at ease with my inner misanthrope, but that angry bastard is an agent of intellect, not action. I do, in fact, have the morals to never seriously consider ever doing something so hurtful and destructive. In short, I grew up.