Like most people of my age, I grew up with the venerable Commodore 64 video game console personal computer, which I used for writing essays, some telecommunications, and yes, occasionally playing a video game or two. But after a few years of programming Commodore BASIC on school PETs, I was also intrigued by the C64's built-in programming languages. I learned a few interesting tricks in both basic and assembly language, but not much - and what ability I had, is long gone.
I started serious computing when I reached university, and bought my first PC in 1991 - a 386/25 with a whopping 4M (yes, megabytes) of RAM and what was then a huge, 80M hard disk. (I own a 2003 vintage PalmPilot that outperforms that baby today.) I maintained this system throughout most of my university years, and in addition to the usual productivity, I bought various site licenses for the programming languages needed for my coursework (particularly Watcom FORTRAN). I also ran a FidoNet "point" system for online messaging. Due to a need to automate various tasks related to Fido, I learned enough DOS batch programming and Awk to run these tasks and generate reports.
Amongst my friends in math and computer science, I began to notice a growing trend of using Unix or Unix-like operating systems on their own PCs. While some of these may very well have been FreeBSD implementations, around 1993, boxes of diskettes containing Slackware Linux were also starting to make the rounds. About a year later, I was in my first tech position (by trade I'm a technical writer) at a Toronto-based software company. Although the shop was Unix-based, everyone had DOS/Windows PCs on their desktop, even if their primary function was to be a terminal to the Unix consoles in the lab. Soon I noticed many of the developers running Motif-like graphical user interfaces on their systems: Slackware had made it into the office. After eight months of working with Solaris and HP-UX, I was intrigued, and hoped that it wouldn't be long before this was something I could do on my own. Meanwhile, of course, I was still in the middle of an English degree and it was more important that my computer could run WordPerfect 5.1 than, say, gnuplot.
In 1995, however, I did make the switch from Dos/Windows to OS/2. I was still running the same system I had bought in 1991 (apart from adding a SoundBlaster, CD-ROM drive and a larger hard drive), and although it would have been underpowered for Windows 95, Warp actually worked really well and probably extended the system's useful life by a year.
Finally, in 1997, I switched out the motherboard for a 100MHz Pentium, then a 266Mhz AMD K6 in 2000. This time, I switched back to Microsoft (specifically, Windows 98), because I felt like spending a good portion of my superfluous free time playing games.
Around this time I also began experimenting with Linux on my own, when I was given a demo CD of the SuSE distribution. When I first installed it on my K6, I got it working with relatively little pain, considering that no distribution was exactly known for user-friendliness at that time. However, X didn't get along terribly well with my 14-inch, fixed-frequency VGA monitor, so for a few years my Linux partition was just a toy that I pulled out and tinkered with every so often.
But in 2003, when I bought my current PC, a 1.8 GHz AMD Athlon, that changed. Much to my chagrin, Windows 98 just wouldn't work well on this system: there seemed to be numerous incompatibilities with both software and hardware. My friend Iain loaned me a CD-ROM of Red Hat Linux 9. Installing Windows had been like pulling hens' teeth, but installing RH9 was as smooth as glass. For the next year and a half, that was my primary operating system. By now X was the default user interface instead of the command line, and it worked much better with my then-current hardware (my battered old VGA monitor, the only remaining original equipment from my 1991 purchase, having finally given up the ghost). Best of all, thanks to then-new productivity software such as OpenOffice.org and the GIMP, and some useful Internet tools, you could actually do something with Linux now, instead of just endlessly grinding out shell scripts.
Red Hat remained my exclusive OS until I moved. At my new address I needed wireless Internet access, which was virtually unsupported by Linux. This forced me to switch back to Windows (XP) again.
In the meantime, Iain had moved back to Ottawa, and through him I heard of a relatively new distribution called Ubuntu, which was then gaining a good reputation for user-friendliness. I was quite impressed with what I saw on the live CD, so I partitioned off some hard drive space and installed Ubuntu 7.04 "Feisty Fawn." Unfortunately, Wi-Fi support was still a bit sketchy, so other than lugging my PC upstairs once in awhile to do upgrades via an Ethernet drop, Linux was again hobby software rather than something I could use seriously. However, when Ubuntu's hardware compatibility finally coincided with my own hardware requirements, Windows XP finally took a back seat to Ubuntu 8.04 "Hardy Heron" as my primary operating system once again, though I continued to dual-boot XP from time to time. And with the recent failure of my original hard drive, this system is now, again, running Ubuntu Linux exclusively.
I'm not the rigid, doctrinaire type of free/open source advocate. I tend to be the "whatever works" kind of user. There was a time, for example, that if you wanted to do any serious music composition or desktop publishing, you were pretty much limited to a Mac- or Windows-based commercial solution (in fact, the last piece of software that I actually paid for was the home edition of the Cakewalk sequencer in 2001). There are three basic reasons I've gone fully open-source these days:
- I'm cheap. Computers are getting more economical, but software isn't, and I don't like paying for either. My experience has been that switching to a non-Microsoft operating system can extend a PC's productive lifespan by at least a couple years. This PC is now 7 years old and it was already 6-month-old technology when I bought it. It's still running just fine, although if a few critical but obsolete components ever quit on me, I'll be forced to replace the whole system. I credit the system's longevity with switching to an operating system that runs fine on less powerful hardware than any recent version of Windows could support. And why pay hundreds of dollars for an office suite, when the folks at Sun give one away that's just as good - and works almost flawlessly with Microsoft's file formats? No one ever needs to know I don't use Word.
- I'm a bit of a geek. Not much, but a bit. For that first job as a technical writer, I spent my first night after work reading through Unix for Dummies so I could actually do my job the next day. Having seen the software developers using Linux in lieu of Windows on their desktops, I loved the thought of getting X Windows up and running on my home PC, even if I couldn't yet do anything productive with it. I can use Windows, I can be happy using Windows, and I need to use Windows in a business environment, but on my own I just like doing something else.
- I like to tinker. When DOS was the only game in town, configuring software often meant editing configuration files in a text editor; none of this Edit > Preferences stuff. I still frequently fire up a terminal window to do stuff, even if I don't have to.