20 years ago, a UNIX style operating system that ran on x86 hardware was released into the world. Since that time, Linux has grown from a hobby project into an incredibly common operating system that underpins many of the systems you use every day. Not bad for free software.
I first installed Linux in 1996 as part of a 6 month paid internship at Vodafone. Vodafone had commissioned a professor from one of the universities to write some trunk-link planning software, and he’d chosen Slackware Linux as the base of the system. I was asked to get a spare, oldish PC set up with the software.
And so began several weeks of tinkering with version 3.x Slackware and X-windows, trying to get the bloody thing to run. But eventually, I succeeded, and a fairly industrial little route planning software package (with GUI!) was up and running. I have no idea if it was put to serious use.
Desktop of Choice
My internship in the Engineering department could have been quite pointless. I didn’t get assigned any real tasks, but a couple of minor text processing exercises introduced me to awk, sed and shell programming.
Happily, this led me to making friends with the folks in the Unix and VMS department, who offered me a job when my internship came to an end. I jumped at the chance, and ended up going to part-time uni and full time work.
Herding HP-UX boxes for a living meant I needed the power of Unix on the desktop. Instead of running an HP workstation, I ended up installing Linux. I had a corporate Windows machine for email, Word, Excel, Visio and Project, but my ‘serious’ work was done on the Linux box. Native X-windows and xterms beats Exceed or Reflection any day. Cron! Scripting! A built-in IP stack that worked!
This was in the days of Novel NetWare, when Windows NT 3.51 was the new (frequently broken) hotness. Yeah, showing my age.
Linux followed me home, so I kept it. I shared a house with two other engineers, and we installed an early version of Debian on a cobbled together PC that lived in the lounge. It became the hack-box, and I remember re-implementing Conway’s Game of Life from scratch, learning about buffer flipping, bit-shifting and binary maths in ways I never had in years of running a DOS PC. The lightbulb finally went on and pointers in C started making sense. Embedding x86 ASM code in C programs (for speed) was a logical extension.
Then I had a couple of jobs where I had a proper workstation (Sun, then HP-UX again). For y2k preparation works, I had to shut down an HP Apollo workstation that had over two years of uptime! NT servers at the time were up and down like the Assyrian empire. Serious workloads were put on Unix servers.
So I ran Linux at home as my desktop. I completely dropped Windows for a time, even for games, somewhere around 1997. The cost of buying up-to-date hardware just for games, compared to the cost of a Sony Playstation console just didn’t make sense. I didn’t need an ultra-powerful PC to run Linux, so I didn’t bother upgrading often. When I did, it always felt like a bargain.
Laptop of Doom
Somewhere in the early 2000’s I got a dedicated laptop for work, since I’d become a consultant and was usually out at client sites. So I’d dual boot: Linux (debian again) for the serious technical work, Windows for documentation and gaming (when at home, of course).
I signed up for dedicated ADSL when it became affordable, and now my Linux home machine became a permanent server. The laptop was my remote client, and I could VPN back in to my own private network.
Rise of Ubuntu
I finally decided to try Ubuntu somewhere around version 5, and was hooked instantly. The Live CD was a brilliant innovation (try before you buy!) and the ease of use based on debian’s package manager meant I got the best of both worlds. I’ve been on Ubuntu ever since.
I was spending all my time in Linux, and I could dual-boot a server at home for games, so I moved to Linux only on the laptop, and at home a Linux only server and a dual-boot desktop.
And it’s been that way for three laptops now, so, nearly ten years. After a dead power-supply took out a server for 24 hours a few years ago, I went virtual for the servers using VMware, and then VirtualBox. Now the email server stays online when I want to play HalfLife or Portal. :)
Stay the Course
There have been times when I’ve considered ditching Linux. Times when I needed Visio. Or something that could talk to my iPhone or webcam properly. Or something with a less industrial interface and a bit of style.
But I haven’t. Why? Because apart from a few rare things, I can do everything I want to with Linux, for free. Easier and faster than if I used Windows or MacOS. For the things I can’t, there’s dual-boot or virtualisation.
I’ve never had a virus, or had to completely re-install the operating system because something got munged. If something breaks, I can fix it, usually by editing a file after Googling for the answer. If I want to try out some new software, I just fire up apt-get and install it, without needing to reboot anything.
I can figure out what’s wrong using tools that are built in. I’ve always had grep and awk and Perl and Python. I can understand people loving Powershell, because it’s what Unix people have enjoyed for years. Isn’t it great to be able to automate your computer?!
And if it’s really important to me, I can read the source code and fix it myself. I don’t have to wait months or years for some vendor to decide my little problem is important enough for them to fix. That’s helped me on more than one occasion with Linux, and hurt me more than once working with a vendor’s closed source software.
Thanks Linux, and Open Source
I’ve tried to give back to the community with bugfixes, doco, my own software, and occasionally cash.
I still use Windows and Office and Visio, which I paid for. I’ve bought plenty of Windows and Linux games. I use the tool I need to use to get the job done.
And for me, more often than not, that tool has been Linux and Open Source Software.
Here’s to another 20 years.