Thoughts on Linux
Sunday, March 9, 2008
I was almost hesitant to post this, because I know how, er, Linux aficionados can be. For that matter, I know how Windows people can be. My goal here is not to incite a flame war, but to give, as a Windows developer, my honest impressions of Linux.
First of all, I like Windows. I'm no apologist and I recognize several glaring flaws, but on the whole it does what I need and I can customize it to my liking. And to be honest, for all its technological shortcomings, my main complaint is that it's stale. Because I've been using XP for quite some time now, I'm in that demographic that's wants the latest bells and whistles but can't afford Vista.
(As a disclaimer, I should point out I used Vista. I installed the volume license copy at work, but installed the wrong version for our activation key. In order to upgrade to the version for our key, I had to be activated. Catch-22. I went back to XP because I needed my computer ASAP. Still, I liked Vista, it worked for me, and I had no complaints.)
I like something different, just for the sake of change, provided the underlying concept doesn't change. I don't mind painting a wall in my house, but I don't want to knock that wall out. (Actually, I do mind painting a wall, but you know what I mean.) Let's face it, Linux gets a lot of press as the little OS that could that's going to knock Windows off its pedestal. But for all its glory, I doubt Linux will ever catch on in the mainstream. Here's why I think so:
Users: I'm a computer user, and I have been most my life. They come naturally to me and I enjoy working with them. I'm in the minority. The majority see the computer as something that does something, but they don't care how it does it as long as it works. It's like cars: the vast majority of people use their car, but have no idea how it works under the hood. They have no desire to know how it runs under the hood, and they're not likely to take the time to learn.
When I think of Linux on the desktop, I think of my Dad. The computer didn't scare him, but he didn't always know how to do the things he wanted to do without help. One of the Linux aficionado's complaints of Windows is that it's dumbed down and holds the user's hand too much. But 99% of computer users need (and even want) that. So when I think of my Dad and Linux, I'm pretty sure he would not have been comfortable with the complexity.
The community: This bears mentioning early, because before you do anything with Linux you're going to need help. Whether its your geeky brother-in-law or an Internet forum, you're going to rely on the knowledge of others to get you through. Problem is, a great portion of the Linux community seems to have some sort of superiority complex. I'm not saying no one is going to help, but there are many who would just as soon flame you for being a newbie. I've posted questions in forums essentially saying, "I know how to do this in Windows; how do I do it in Linux?" and got flamed for daring to mention Windows in a less than insulting tone. (Don't misunderstand, I have gotten friendly and helpful answers, but they're mixed with those peppered with outright disgust.) You're probably best off with your brother-in-law.
Choosing a distribution: What? If you thought the different versions of Vista was confusing, try determining the best distribution ("distro") for your needs. According to linux.org, a search for English-language distros compatible with Intel x86 processors returned 364 results. Hmm, I guess that's a start. Better hit those forums and ask which one is best. You'll probably get 364 different answers. Other factors: Debian? Red Hat? Slackware? KDE? GNOME? And you thought Heinz came in a lot of varieties.
Download: Finding a download is easy. Knowing what to do with it is another matter. Most distros are available as ISOs. Don't know what an ISO is? Neither do most people. I will say, though, the download websites are getting better at explaining what to do with the 600MB file they just downloaded.
Installation: I will say this: For all its reputation about being a geek toy, installation is probably the easiest part of Linux. I tried Knoppix first because somewhere I read that it was a pretty good Live CD (which is a means by which you pop in the CD, boot up, and Linux installs itself into memory, thereby not touching or affecting your current Windows install. You can do whatever you want, but nothing is saved to the hard disk). I've seen that most distros have a Live CD now, but this was the first one I heard of. And you know what? It worked. And so, wanting something a little more permanent to mess around with, I downloaded Mandriva, which I'd read was pretty good for beginners. Like most Live CDs, it puts an option on the desktop to install to the desktop.
In my opinion as a regular user, not as an IT professional, this is where Linux really shines. I've installed some five distros now, and the install is always seamless. Kudos to Linux for that.
Applications: Another strength of Linux is that a great deal of software comes pre-installed, ready to use. (I'll ignore the hypocritical attitudes toward Microsoft for doing this.) Software-wise, the best arguments are OpenOffice and Firefox, which offer compatibility with Microsoft Office and web access, respectively. (There are other Linux web browsers, but Firefox is near identical to its Windows counterpart.)
Beyond that, though, pickings are slim. While odds are good there might be an open-source version of the program you use every day, it won't be the same program and there will be a learning curve. Most software vendors do not make Linux versions of their products, so you're often left with a "look-alike."
Most troublesome of all is software installation. While most distros have some version of a "package manager" (similar to the Add/Remove Programs control panel in Windows), for the most part it hasn't reached the ease-of-use of the wizards in Windows. And then there are multiple types of installation packages (RPM and DEB being the most common) and the graphical user interface (KDE or GNOME) you're using, so finding an installation that'll work becomes much more difficult. For that matter, most installations are simply collections of source code, and it's up to the user to compile. No, I don't see Dad compiling software in a command-line environment.
Games: I won't say there aren't any games for Linux, but they're few and far between commercially. You're not going to find The Sims here. Go to the next section.
Now what? Linux is installed, what do I do with it? The flip answer is, anything you want. But really, it depends on what you can make it do. That's where the geek factor comes in. Geeks enjoy that kind of stuff; Joe Average does not. Joe Average just wants it to work, without having to jump through hoops, without having to change the oil himself.
When I think of what I do with my computer now, there's just too much that doesn't have a Linux equivalent, or the equivalent is either inadequate (sometimes it seems "open source" should have been called "coming soon" because of their insistence on releasing feature-incomplete software) or non-intuitive. Actually, I'd really like to see more software vendors porting their products to Linux. But not gonna happen because the user base isn't there. The user base isn't there because the commercial software isn't there. Catch-22.
And while the user interfaces are improving, there's still too much that relies on the command line and arcane knowledge. Dad lived through the Commodore 64 and MS-DOS, and I'm sure he didn't want to go back when a mouse is so much easier.
Conclusions: Linux is not a bad operating system by any means. But it just isn't for the average user. I've read predictions dating back to 1998 that "this is the year Linux takes off!" If it hasn't replaced Windows after such haughty proclamations, I doubt it will. It's more than Microsoft's "monopoly" on the desktop, it's a mind set. Where Microsoft sacrifices stability for ease-of-use, Linux is the opposite. Where Microsoft spends millions of dollars in usability studies, Linux (by and large) relies on programmers who assume all users are just like them.
Linux will, in my opinion, need to undergo a massive paradigm and thought-process shift if it wants to be successful on the desktop. I'm not saying there aren't those trying to make it happen, but so long as the Linux community is so fragmented (I'm talking distros, here, not enthusiasm), I just don't see it happening.
But hey, just my $0.02 worth. YMMV.