I recently added Linux to my set of in-house operating systems, together with the already existing Windows XP Pro and Macintosh OS X. This has led me into thinking about comparative operating systems, and thus to this summary of my thoughts on the subject.
But first, a quick historical sketch: I've been using OSes for a long time, starting before any of these existed. Sticking to the direct predecessors of these OSes, in roughly chronological order, I've used various flavors of Unix; CP/M (arguably the predecessor to MSDOS); MSDOS; all of the releases of the Macintosh OS; Windows 3.0, 95, 98, NT, 2000, XP; Linux Fedora Core 3. That doesn't make me an expert, but I'm not a neophyte either.
I'm going to rank Windows XP Pro, Mac OS 10.3, and Linux Fedora Core 3/Gnome along several axes: available applications, user interface, reliability, speed, quality, and hackability.
Available applications: Windows, Mac, Linux. (Note that I'm talking desktop, not server here.) While most people don't care about how many applications are available, only whether the ones they want are, the total number is a good predictor whether the one you need is present. Windows' huge market share pushes most developers to target it first, even when they would privately prefer one of the other OSes.
User interface: Mac, Windows, Linux. No big surprise here. Mac is still the best. But Windows is not terribly far behind. Linux/Gnome reminds me of early Windows releases. They're trying, but there are still huge areas of the OS that are uncovered by a GUI, and thus much harder to figure out and use effectively. Mac is the only OS that started as a GUI system from day one.
Reliability: tie. In my experience, they all just keep on running. This was not true of Windows before 2000, nor of Mac before OS X, but is today. My systems never crash, and most stories I hear of other's crashing involve questionable drivers, always a weakness of any OS. If pressed on the subject, I'd say Linux has a slight edge, mainly because it's come out of heavy server usage, where reliability is very highly prized, but it's a thin edge.
Speed: Linux, Windows, Mac. But Windows and Mac are really tied. And I'll bet Linux slows down as the GUI gets more complex and extensive.
Quality: Uh. This is a very tricky area. In a pure OS sense, Mac wins. It's clear they take more time hand-crafting the system. But here Linux is very interesting: Linux itself and most Linux applications are built by people who really care about what they're doing, are often more technically sophisticated than people who build apps based purely on market share analyses, and often have no corporation backing them up. This means that when those developers are less skilled than they think they are, there's no corporate quality control to censor them, and the result is junk. On the other hand, when they are good, they're *really* good. (I have to add one pet peeve here: originality. Why do Linux developers seem to feel they have to slavishly copy the look-and-feel of Windows? How about pushing the envelope a bit more, huh?)
Hackability: Linux. By hackability, I mean your ability to dig into the system and change or extend it, not the ability of others to do that against your wishes (in that area, it's Windows, Mac, Linux, but mostly because malicious hackers primarily target the most wide-spread OS). In hackability, Linux obviously has no competition from either of the other two. You can literally see and change every line of code and every byte of Linux and any open source application you run on it. Wonderful.
Everyone has to make their own decisions about which of these criteria are important to them. I always advise naive users to start with the applications they want to use and pick the OS that has the best of them. By this criterion, Windows usually wins. On the other hand, users who aren't doing anything complicated or unique are probably best off with Macintosh, the simplest and most user friendly of the three. Non-experts should still stay away from Linux, which has a ways to go yet in usability (try explaining to a non-techie what "chmod 755 foo" means). But for people like me who like to hack the system sometimes (albeit less so than when I was younger), Linux can be very, very attractive.
My own solution is to keep all three around. But that probably doesn't work for most people.
Comments