First Computer

I'd been begging my mom for the better part of a year. Most of my friends came from upper middle-class families, so it was probably a bit more than my lower working-class mom wanted to hear when I came home one day after an afternoon of King's Quest VI with a friend and uttered those words that would forever change my life, "can we get a computer?" Needless to say, it wasn't until Christmas. Although I don't recall the precise model, I do know it was a Packard Bell, 486DX2 (66mhz) system, with 8MB of RAM (originally). Of course, I just wanted to play games.

Hackers, the Movie and The Fugitive Game, by Jonathan Littman

I was never a bad kid — rarely in serious trouble (more on that later). I was, however, a curious kid. Seeing the contrived, but visually stunning, interfaces that only fiction could "make real" at the time or reading what amounted to a true crime thriller whose characters seemed larger than life only peaked that curiosity. I wanted to be a hacker.

It didn't take long to figure I couldn't become a hacker by merely consuming the stories, no matter how real or fake. I needed reference materials. Libraries were still catching up to the computer age where I lived. Having limited money, I'd taken on the habit of asking my mother to drop me at the bookstore for a couple of hours while she ran other errands. Finding my book for the day, I'd go sit in the small cafe area and "preview" it. Sooner, rather than later, I also discovered bookstores had something more.

GNU/Linux on and island of one.

I'm remiss to remember the exact title. But I know it was a black coverered Linux book, not a "bible" and not particularly distro specific, thinner, and therefore somewhat accessible cost wise. Still the good kid, I couldn't bring myself to snag the CD out of the back cover pocket. It had to wait until I'd finally saved up enough allowance.

What felt like forever was probably only about a month. I didn't have to wait any longer, but I still had to be cautious The computer was not mine per se, but for the entire family. With permission, sufficient initial research, and a very slow and careful first install I'd successfully re-partitioned the aging box and was the proud new administrator of a Slackware Linux system. Critically, everything appeared as normal to the uninitiated via the magical properties of a boot floppy.

Making friends with C Programming.

It's not like I'd not used Linux, or at least comparable BSD systems prior to the install. But free shells were limited, and what I'd learned about hacking mostly had me wardialing, occasionally connecting to stray VAX/VMS systems which always felt pretty opaque. Without internet access (unsupported winmodem) though, Linux got boring pretty quick. I'd download a few exploits to a floppy, compile them on Linux to play around, but I had no idea what I was doing or even thought I was gonna try to do.

I needed to learn how to program. My brother, knowing I was "into computers," told me about a C Programming elective at our high school taught by his math teacher. While I'd already read some basics, 99% of my "programming" at the time was CMD batch scripts and whatever unrecallable language allowed me to automate my telenet scans on my Windows dialup terminal software.

Unfortunately, I didn't learn how to write exploit code (shocker) from my brother's Math teacher. To the contrary, I recall one interaction with him after an exercise having us write a program to add matrices. He failed me on that assignment because, instead of writing it exactly as he said, I used a 3-dimensional array to make the number of matrices it would add more configurable. Alas, I have it on good authority, C is not a 3-dimensional programming language. Who knew? Not all was lost, however, it got me started down the path and introduced me to a handful of other students who were also "into computers."

Disciples of the Zero Hour. Good trouble?

Both my skills and curiousity started developing more rapidly. Having identified others like me, we quickly banded together to talk shop, share skills, and, of course, get into trouble. I hadn't "fallen into the wrong crowd" as much as I'd gathered the crowd, but what's a "hacking group" without an elite name? Disciples of the Zero Hour (DZH) was born.

Honestly, it started more with phones than computers. As a mostly social endeavor we'd walk around town testing out old phreaking techniques, play around with the venue's payphones on school trips, or in the most extreme cases, sneak out and beige box a neighbors house to set up a toll-based conference call at 2am. Apologies to anyone who actually had to pay that bill.

Without a doubt we did some things that caused some people some headaches, but it was never malicious. I was even on pretty good terms with the school's sysadmin. So it came as a pretty big surprise to me when one day I was called into the principal's office for "installing a virus" on the computer network. Needless to say, I had not. Furthermore, wanton destruction was never my gig. Rather the Microsoft Office teacher, having no real desire to teach, would set us down for an entire class to conduct relatively mundane and simple instructions from the textbook. During one of these episodes, I'd finished early and had taken to working on some code I was carrying around on a floppy. In aiming to not completely abandon her obligation to her students, she walked around diligently checking if anyone was in need of help. She caught a glimpse over my shoulder of something she clearly didn't understand. Code was something she'd only saw in movies, and generally only when someone was breaking into something.

Hackers, the movie, came back to bite me. I was banned from the school's computer systems and all computer classes until I graduated.

The internet is dead. Long live the internet and 3Geeks.

On the heels of the dot com bubble and Y2K, my sleepy home town of mostly blue-collar folks became increasingly and simultaneously aware and skeptical of the direction the world was going in. I'd taken a job the previous summer with a high school friend who was trying to start his own landscaping company since somewhere around the age of 13. Prices for hardware were dropping. It was time to expand my empire.

Hardware modem, RAM, larger hard drive, and the promise of my grandmother's old (but still newer than better than the old 486) PC changed everything. My brother was graduating and getting his own laptop for college. The stars were aligning. The 486 was converted to a full-time Linux server on my blazingly fast 56K brand-new modem and AT&T dialup. Custom CHAP script, Linux based IP Masequerading with a local LAN for my brother, and the emergence of DynDNS meant it was finally time to bring DZH's presence online.

I picked up as many books about web programming as I could starting with HTML and "DHTML" (which at the time was actually covering both VBScript and JavaScript) and eventually, through a long targeted hacking campaign, heard about another language... PHP. A blessing in disguise, I (and other members of DZH) started spending more time writing and rewriting sites than doing anymore "actual hacking." Member sites were mostly a loose network of collections of useful links, information, some original materials, and ways for people to get connected.

Over time the whole operation grew into a broader community of programmers, artists, musicians, and general geeks of various persuasions. DZH was dead. 3Geeks was born. Founded by myself and two others, it started as something of a support community. We offered free, but exclusive hosting for other aligned creative projects, started microblogging, and eventually began a short-lived podcast using some early audiocasting protocols. Unfortunately, due to both the limitations of the 486 which operated as the central component of the whole setup, as well as the continued use of nothing more than a dialup connection, we were downsampling mp3s for music segments and streaming at an abysmal 24K. I'd be shocked if anyone could make out a word we were saying.

It was the best of times. It was the worst of times.

People were graduating and moving on. My first love had broken up with me. My new best friend died suddenly. My father could barely hold a job as metal/machine work was drying up. Everything I thought I knew about how life was going to go was changing quickly. What felt like a last minute intervention by the most amazing English teacher of all time became one of the most difficult decision in my life. I thought I could become a journalist.

As much as I loved computers and programming, I discovered at the last minute that loved telling stories too. I loved contemplating the real world in philosophical and playful ways. I loved argument and debate. I loved challenging power and entrenched ideas. But as the events of that time unfolded, I fell into terrible depression. Everything about everything felt uncertain and the only way I knew how to comfort myself was to stick to what I knew best and what was real to me.

I enrolled in New England Institute of Technology (already fairly late) for Computer Information Systems and was, thankfully, accepted. I wasn't going there to learn. I was confident I already knew much of what the program was going to offer. I went for a piece of paper, without which I didn't think I'd be able to escape the confines of work and debt which I felt so negatively impacted my family and youth. It was a relatively cheap commuter school which taught practical technical skills and was, at least in some fields, highly regarded for what it was.

Despite my heart not being in it or into much of anything at the time, the change alone was helpful. I picked up a handful of smaller jobs and built up reserves working overnight shifts at Toys R' Us during the holiday season. I paid for what I could, supplemented by grants, small student loans, and what today seems like a really low-limit credit card but, at the time, felt like insurmountable debt piling up. A handful of co-conspirators from my DZH and 3Geeks days took on the same program and courses, so we'd carpool when possible. Mostly, it was just the feeling of being independent. That independence, combined with the boredom suffered from attending classes where I could probably teach the teacher resulted in plenty of skipped days, working on personal projects instead of assignments, and ultimately, not deciding to continue past my Associate's degree.

Outside of limited social engagements with the people I already knew and who were still around, I sought even more of my community in the place that had always provided. I began writing my own toy OS and joining open source projects and communities which, at the time, were still largely system based. I started doing minor improvements on the iPod Linux project which lead to working towards a comprehensive rewrite of their front-end toolkit to enable faster and less bug-prone application development. I was still providing free hosting and services on the old 486 (now on cable internet and simultaneously acting as a foot rest at my desk). I'd gotten my own laptop, a used ThinkPad on which I prompstly installed Slackware. Things were comfortable, routine, stable... and they remained that way for years as I slowly developed my skills.

Careers sometimes choose you.

Things kept pretty smooth for a bit. No alarms. No surprises. I felt more confident in C than I had at any other point. I'd learned a lot about fundamentals from x86 ASM and the operating system project. I mastered various web-related technologies as I continued to use Apache/PHP/MySQL/HTML/CSS/JS to share my work and interests with the world.

Then, everything kind changed. My father died, relatively suddenly, but not particularly surprisingly. The family was straddled with debt, not that he had solid work for some time. But, that did mean whatever he was able to do or help out with (even if not financially, practically around the house) was done. Things carried on for a short time after, but as the dust began to settle the cracks started to appear.

Be me, a student without a full-time job, saddled with debt (albeit less than my peers), and a company called Countrywide tells you its fine to co-sign on a refi + equity because all they need is another name, credit doesn't matter. What was likely intended by my mother to be a short term attempt to create some "breathing space" turned out to be the early indicators of the predatory lending crisis to come. Had I not been a selfish and largely financially illiterate "kid" at the time, things could have been different.

I wanted to go back to school. This was it, my opportunity to join my old friends, complete my English degree, and work as a starving writer until I got my break. My mother, being the forever giving person that she is, agreed. I enrolled at the University of Masschusetts, Lowell to major in English and minor in Political Science. For a brief time, things seemed well. I was working far more regularly with the skills I had (as a computer technician) with decent enough pay for the time, sharing rent with friends, and trying to pay "my own way" as much as possible. What was I thinking at the time? Was the idea that she'd save money on household expenditures with me gone? Was she supposed to rent out my old room? My fiercly independent and somewhat anti-social mother? Unfortunately, I was probably only thinking about myself.

I started to struggle early on. I was spending less time on actual studies and more time reading political and social philosophers of my own choosing, writing for local political "zines" or articles to the student newspaper about the working conditions of campus bus drivers, and trying to organize students against the gentrification they, including myself, were contributing to. I don't recall if I called her to tell her how poorly I was doing or if she called me to break the news, but not long after we probably both thought we had a new lease on life, the whole house of cards collapsed. We were likely a canary of sorts. The real depths of the financial crisis wouldn't begin to reveal themselves until almost a year later. The house was gone.

I dropped out, increased my hours, and started looking for new work. As you can probably imagine, looking for work on an associates degree with no real experience on paper in an emerging recession doesn't work so well. Things got tougher at the job I did have, people were getting cut, hiring was limited, existing employees were being taken for a ride with inconsistent schedules, skipped or unpaid raises, etc. I know... let's unionize! Retaliation was fairly swift and immediate once management got wind. Inevitably, a long time and fairly high performing saleperson who was our sales team organizer got fired for allegedly stealing a laptop. I got it later on more trusted authority that he may actually have done so, but at the time and given the circumstances a handful of us took wildcat action, walked out, and picketed the building.

Though young and naive, it's difficult not to look back on that time with some fondness for the overwhelming solidarity and brute excitement of it all. Obviously, with no actual union yet, the walkout/strike resulted in all participants being immediately fired. A few weeks passed, numbers and support dwindled, and I was in a precarious position. As luck would have it, customers at a computer hardware and service store consist at least, in part, of local business owners. After telling my story, I was effectively hired off the picket line for a combination systems administrator and customer support position in a small, local technology manufacturing company.

Within a couple of years I'd improved operation so significantly through various technical solutions that they came to me with a project to redesign and develop one of their consumer facing e-commerce sites in preparation for an expanded product line. In addition to my bread and butter skills around web development, I was tasked with writing various integrations for proprietary sales and warehousing solutions. After a particularly disappointing call with one of the provider's tech support agents who affirmed they would not provide credentials for an account with write access to the database, I opted to return to my roots. Analyzing the distributed binary files for their programs, I was, ultimately, able to identify and obtain the login credentials which, simultaneously to my joy and horror, were effectively hard-coded and universal to every single one of their clients.

With write access to thousands of small manfuacturer's shipment orders, I immediately sent as many units as I could of the most expensive products I could find to a pop-up reseller I'd set up to run out of the Virgin Islands. Oh, you're still here? Maybe I should have been a writer. No, rather, using my first successful commercial website as a stepping stone, I started looking for new opportunities within the scope of "digital agencies." I'm not a designer and have never claimed to be, but I knew there were plenty of growing agencies which provided not only beautiful and creative marketing solutions, but also the underlying backbones to everything from e-commerce and content management all the way to custom intranets and one-off operations solutions. Enter Imarc.

The end of the road is just the start of the unknown.

Imarc is where this story ends, but in so many ways is where my story actually began. Of the past ~ years, Imarc represents 12 of them. In my time there, I worked for a number of clients creating custom solutions with very particular needs. From SSH (which required a high security CMS / marketing site), to Motorola (which needed in house talent to manage and inevitably sunset their pre-Google Play app store), to over a dozen state CPA Societies (which integrate with an obscure proprietary CRM solution), I've seen and built a lot of things. Ask me more about them.