03 December, 2007

Datacenter Confidential #12

After taking an incredibly unscientific poll of friends and colleagues, I have discovered that the Linux users tend to lean toward Ron Paul and the FreeBSD users tend to lean toward Dennis Kucinich.

That said, I have a handful of 7.0-BETA2 and BETA3 boxes up and running at ApartmentNet. So far so good, no major upsets. I even managed a "JumpStart"(*) install of 7.0-B1.5 on a box without a CD/DVD without too much hassle. SMP seems to handle noticeably faster, but like the Ron Paul/Kucinich test, there is no hard data to back that up.

What I've also never had any hard data to back up is why I have never really been comfortable with Linux and more specifically the Linux "community." It would be cliche (and also false) to say that my disdain goes back to the 0.9X kernel days where you had to download 20 floppy disk images over 28.8k modem, but I think that the real turning point actually came shortly thereafter when people started distributing their pre-packaged versions of Linux on CD-ROM. "No good," I thought to myself back then in 1994 and 1995, "can ever come of this."

It should be noted that even that early on I was already well on the path of Unix snobbery having been given or taken shells on various AIX and Sun machines, not to mention having a brief stint as a junior systems administrator for an extremely small ISP running BSDi on literally two 386 boxes whose combined horsepower pales in comparison to my shitty cellphone -- hell, an iPhone today probably outpowers those boxes by an order of magnitude, and if you could figure out how to hook up a dozen serial modems to an iPhone, you would have twice the dial-in capacity.

My first ever legitimate shell account (using the term legitimate in its loosest possible sense) was on a research server at Case Western Reserve University run by the then wife of one of the local stoner/hackey-sack/2600 geeks. The machine was an RS6000, roughly the size of a small "beer" refrigerator running AIX, and we all used tcsh (the Turbo C Shell) because you could use arrow keys to edit your command line or page up and down through a buffer of recently typed commands -- an innovation later picked up by the Linux community and applied to the Bourne shell in bash, the Bourne-again Shell. Despite the extremely cumbersome conditional syntax of tcsh, the desire for rapid command-line editing won over sh (Bourne)'s easier structure.

Ironically, I still use tcsh for my login shell (along with an environment that is essentially 15+ years old), but I code shell scripts exclusively in Bourne.

Having as real-world examples only academia to rely on in the very early days I became accustomed to there being a right and wrong way to do things on the command-line; ourselves, right or wrong, not actual students or academics by any stretch of the imagination (some of us being 13 or 14 at the time, still some even younger) would nevertheless mimic in our own burlesque way the formalities of proper Unix habits. As teenaged crackers, we kept neatly (if not clandestine) organized home and working directories, wrote properly tabbed and commented scripts, and would even go so far as to fix or preempt problems on machines we weren't supposed to have root on.

For some time Linux remained a marginal pass-time for like-minded hobbyists, something you could install on an old 286 and show off to your fellow hacker friends, bragging, "yeah I have root@my house." ${DEITY} forbid your modem should fail forcing you to spend 8-10 hours recompiling your kernel to accommodate a new or different modem -- especially considering the fact that the odds were not in your favor that the new driver would even build, much less work. Everyone running Linux back then would also become intimately familiar with "fsck", and would run it at their own peril.

Regardless, running Linux at home was a convenient way to stay logged onto (and logging) irc all day, provided you ran it inside screen. And having a stable, always up dial-in connection to the internet, or a machine on "the backbone" whose resources you could purloin for the purposes of running screens and irc put us scallywags at a strategic advantage compared to our peers, fellow hitchhikers on the 1nph0rm4t10n sup3r h4lfp1p3, all vying for dominance of one thing: Internet Relay Chat.

In the ancient times, the days of lore, there were BBSes -- bulletin board systems. The BBS was like the New York punk scene for anti-social losers in the late 1980s, early 1990s. Massive amounts of wire fraud and toll theft was perpetrated for the express purpose of one teenager in one area code being able to call into a BBS run by another teenager in another area code or even country. In fact, to say it was just teens is to be unfair to the burgeoning cottage industry of international software piracy run by enterprising adults in that era; these criminal enterprises relying on a small and powerful subculture of phone phreaks and crackers to grease the wheels and pave the way. Out of this came the distinct subculture that came to be known as the "H/P scene" for hacking/phreaking scene, or "the scene" to be ominously short.

Entire BBSes were set up as electronic hang-outs devoted exclusively to "the scene." Some scene members began to shun piracy, the porn trade, and cheap hucksters trading in calling and credit cards, not to mention the underground art scene on the BBSes (ANSI kids -- a subject for a future post). Rifts were formed, and naturally turf wars and rivalries erupted out of the BBS h/p scene, which brings us back to irc.

The Internet Relay Chat was a natural evolutionary step above BBSes because it enabled users to communicate across the globe in real time en masse at a scale that far exceeded the biggest BBSes. IRC was essentially a globally networked version of multi-user chats available on BBSes with more than one dial-in line. Some BBSes could have as many as 30 or 40 dial-in lines -- although these bigger BBSes were almost exclusively paid-subscriber systems (AOL, famously, was originally nothing more than a multi-line dial-up BBS), meaning h/p scenesters would have to purloin accounts subject to frequent suspension, and BBS systems operators (sysops) would limit the time users could tie up limited phone resources. Internet Relay Chat offered scene kids chat rooms on servers that were always online with practically no limit as to the number of simultaneous users. If you had access to a stable shell account on a server with a perpetual connection to the internet, you could literally stay on irc 24 hours a day, 7 days a week.

And if you are going to be online that long, you might as well make yourself at home. But like any frontier, when the settlers started getting in each other's way, conflicts naturally arose.

Like a young Ian McKay being in the right place at the right time to see the Bad Brains come onto the punk scene in DC, I happened to butt my head into the burgeoning IRC scene at just the right moment in internet history and subsequently got caught up in the maelstrom.

For sure, it was a wild ride that took me places I could have never imagined as a teenager living in the suburbs of Cleveland.

(*) Its not really JumpStart, but it sure isn't KickStart. But, it's getting a bootfile from DHCP (which is bootp on steroids) and then NFS mounting root and running an install.