Like millions of other people, I use Microsoft Windows on my home computers. The oldest one runs OEM Windows 2000 Professional, and the two newer ones run OEM Windows XP Professional (and yes, in case you're wondering, they're legal). But I also run Linux; all of my Windows machines dual-boot to Linux, and I have two other machines which run Linux full-time.
I suppose you could say I'm a Linux evangelist in the sense that I try to encourage other people to try it, and I like to tell people what benefits there are to this operating system. But I'm not an "evangelist" in the Christian sense of the term, where one tries to ensure that others choose Linux to the exclusion of all others.
#1: Games. While Linux has made great strides in other areas, the fact remains that if you want to be able to play all of the latest and greatest games, you really need to be using a fairly current version of Microsoft Windows. That's simply the reality of the situation. Even Mac users, who have a much larger install base than Linux, are left playing catch-up when it comes to games.
#2: Games. Seriously, this can't be over-emphasized. If it weren't for the games, I would probably run straight Linux on most of my machines. The other exclusive benefits of Windows aren't worth the price tag and aggravation most of the time, although I'd still keep one Windows machine on-hand for certain specialty tasks.
#3: Unusual Websites. Websites which use Apple's Quicktime, Microsoft's Windows Media, or other Windows-only audio/video plugins (particularly proprietary VR plugins) generally won't work properly on Linux, if at all. For various reasons, none of the people who make these plugins intend to make Linux versions, even though Adobe demonstrated with their Flash 9 Linux player that there's certainly no reason it couldn't be done (and on that note, thank Santa for Flash 9 on Linux, since the majority of "active content" on the web nowadays is Flash-based, and you can even use it for streaming audio and video, as YouTube demonstrated).
#4: Video Processing. If you want to do stuff with video, you basically have to use Windows or Mac. Linux video processing applications lag far behind their Windows and Mac counterparts. That also goes for video "piracy" software. Please note that I use the word "piracy" in quotes because there are plenty of legitimate applications for video format conversion and DVD copy-protection circumvention technology, such as making edited copies of movies for your kids in order to remove certain objectionable scenes. But the asinine stupidity of the American DMCA law is another subject, for another time.
#5: Hardware Compatibility. My Hauppage USB TV tuner comes with Windows drivers. It doesn't come with Linux drivers. Similarly, my Canon USB scanner works fine with Windows, but not with Linux. My Pinnacle Systems PCI AV/DV video input card works with Windows, not with Linux. You can't blame Linux for the fact that video hardware manufacturers are too lazy to make drivers for it and too secretive to release their hardware specs for the open-source community to make their own, but it ends up being a major strike against the OS anyway. Sometimes, life just ain't fair.
#1: It's Free. With all the shouting you hear about features and usability and learning curves and compatibility, you can almost forget that the chief advantage of Linux is its price tag: zero dollars. Not a lot of things in life are free.
#2: It's More Secure. There has been a lot of debate over the validity of this claim, with "independent researchers" claiming to produce studies refuting the Linux security advantage on a regular basis (mind you, that's a lot like "non-partisan" lobby groups; you have to be pretty damned naïve to believe someone must be non-partisan just because he says so). But if you look at their methodology, it's always pretty questionable. The argument that Linux is simply too small to be worth the hackers' time falls apart in the web server space, where Apache runs more than 60% of the websites as of Nov 2006. The argument that Linux has more security updates than Windows falls apart when you realize that a Linux distro's security update list includes all the third-party applications that came bundled with it, whereas Microsoft Windows Update only updates Windows itself, and totally ignores third-party applications.
At the end of the day, Linux simply has a more security-friendly design, starting with the fact that it was designed as a true multi-user OS from the ground up. I never sit down at my Linux machine and log into the graphical desktop as an administrator, because su can take care of any admin needs I have, and there is no mixing of user and system data whatsoever. They're not even on the same disk partition. But on a Windows machine, you have to log in as administrator all the time in order to do routine maintenance operations, and there is heavy mixing of user and system data. In practice, like it or not, most Windows users, particularly so-called "power users", end up giving themselves admin privileges for convenience.
#3: A Decent Filesystem. The Windows filesystem sucks for many reasons, starting with the damned drive letters. It's pretty sad that it's the 21st century and we're still using a drive-letter convention which was originally designed for 5¼" floppy drives. You might ask what's so bad about drive-letters, but that's because you're used to them and you take their restrictions for granted. For example, suppose your C: drive is getting full, so you want to move a huge 20GB application directory from the C: drive to the D: drive. You know what will happen, don't you? The application will promptly stop working, and it won't work again unless you completely uninstall it and then reinstall it on the D: drive. And you wouldn't even think about trying this with some part of the operating system itself.
Mount-point filesystems solve these kinds of problems by allowing seamless, transparent mapping from any physical media to any other. On a mount-point filesystem, you could move the entire "Program Files" directory to a different hard drive, change the subdirectory to a mount point, and the OS wouldn't know the difference. And that's just one example of the superiority of mount-point filesystems. Microsoft knows this, which is why they've tried to emulate the mount-point filesystem. The UNC system is an attempt to do this, but only for networking purposes. The NTFS filesystem also allows you to mount partitions as mount-point subdirectories on the C: drive, but this is not a widely advertised function for good reason: it's buggy as hell. I tried it once and the permissions were so badly screwed up that I couldn't delete or change permissions on a test file that I'd made myself, even when logged in as an administrator. I had to give up, unmount it, and then map it to a drive letter in order to delete that file.
#4: Remote Computing. SSH rules. Anyone who's actually used Linux and SSH to do remote work will testify to this. Microsoft advocates like to claim that Windows has closed the gap, but they're just spin-doctoring. Yes, they have "Terminal Server" now, as if I'm going to throw a wheelbarrow full of money at Microsoft for a special dedicated Terminal Server operating system in order to emulate what I get from a single subsystem on Linux. And yes, they have numerous third-party graphical "Remote Control Desktop" third-party applications, but again, we're talking about spending money, only now we're talking about third-party applications which are not supported by Microsoft, and we're also talking about bandwidth. Linux was designed from the ground-up to allow plenty of useful control through the command line, whereas Windows is basically useless at the command prompt. You need the pretty graphical tools in order to do anything, and that means you need plenty of bandwidth. Not very useful if you're trying to do remote work over a saturated wireless connection.
#5: Scripting. The Windows dearth of command-line functionality also makes scripting rather problematic. In many cases, you simply can't script something at all, because the makers of the application in question never thought to include any but the most rudimentary command-line switches. There are plenty of things that one can do with a simple script in Linux that would require a specialized application in Windows, especially when it comes to batch processing and scheduling of complex activities.
#6: Frequent Version Updates. Microsoft rarely releases a new version of their Windows OS even when they've made significant changes to it. Why? Because they know people won't pay for another expensive upgrade every year. So if you have a Windows OS that's been around for a while, expect a long and grueling exercise in masochism when you try to bring it up to current spec. The last time I reinstalled Windows, it took many hours of downloads and upgrades, and more than a dozen reboots before it was current. But Linux distros release major version updates all the time, because it's free and they know most users will simply upgrade to the latest version. Look at the ridiculous length of time it took them to bring out Internet Explorer 7. How long was it since they released IE6? 5 years?
#7: Better for Web Development. Since the majority of webservers run some kind of UNIX-style operating system (either Solaris or Linux or FreeBSD), including all of the top ten most reliable webservers according to Netcraft, a Linux machine gives you an environment that much more closely approximates the typical webserver. Remotely logging into your webserver's command-line interface should not feel like a strange excursion into an alien environment.
In the past, a lot of arguments about Windows vs Linux have strayed into the realm of ideology. Linux advocates accuse Windows advocates of supporting a fascist corporate plutocracy, while Windows advocates accuse Linux advocates of supporting failed Marxist socio-economic theory. I have, at times, tried to debate these kinds of issues on those terms, but I have come to realize that they are mostly red-herrings. In the end analysis, Windows and Linux are nothing more than products: tools that people purchase and/or download for their convenience, utility, and/or pleasure. They should be judged on those terms, not as symbols or icons of socio-economic ideologies. And yes, you can run both at once, thus making the whole "Windows vs Linux" argument moot.
However, that doesn't really apply to criticisms of Microsoft. Windows is a mere product, but Microsoft is a corporate entity: a person for most legal intents and purposes, and so it can be judged as a person for its conduct and history. And that person is a dishonest, scheming bastard. In the interest of brevity, I won't reproduce the Internet's voluminous arguments about how Microsoft's history is filled with deceit, antitrust violations, and general skullduggery since you can easily look those up for yourself (they were actually convicted of those crimes in a US court, but then the Bush Administration came to power and gave them a slap on the wrist for punishment). But I will list a few websites:
Humorix: a humourous Linux advocacy site.
What's So Bad About Microsoft? A discussion of Microsoft's crimes and harmful intents.
The Anti-Microsoft List: a sorted DMOZ list of anti-Microsoft websites.
The interesting thing about Microsoft is that many years ago when my website first went up, a lot of people E-mailed me in order to vehemently defend Microsoft as a corporate entity. Today, I can't even recall the last time I got an E-mail in opposition to my anti-Microsoft attitude. Most of Windows' defenders acknowledge that Microsoft engages in shady business practices, but they treat it as a necessary evil that you have to live with. Those who defend it pretty much ignore its corporate behaviour entirely and focus on the Bill and Melinda Gates Foundation, as if a private charity organization started by Bill Gates at the urging of his wife Melinda and financed with his private fortune really has anything at all to do with the corporate conduct of Microsoft.
Microsoft Windows is obviously here to stay. Only the most rabid Linux advocates would say otherwise. But that doesn't mean we have to be happy about its market dominance, and there is room for other operating systems to carve out niches of their own. The home computer gaming market is basically owned by Microsoft and a number of market mechanisms ensure that this situation will not change in the foreseeable future, but other markets are up for grabs. In order to increase Linux market share, four things need to happen:
Reduce the learning curve for Linux. I have been a network system administrator since 1995. I have done this job with HP-UX, SGI IRIX, HP-UX, Sunsoft Solaris, Windows (starting way back with Windows/286) and Linux. I never had a problem picking up Linux, but I am not exactly the typical user. This has been said so often that it's virtually cliché, but Linux needs to be more user-friendly. It needs better documentation and it needs to be possible to do all common system administration tasks from the GUI. Recent distros have made great strides in this direction, but a lot of work remains to be done. While we don't want to follow Windows down the path of eliminating the command-line, we do need to make GUI wizards that interface with the command-line tools in order to facilitate setup and configuration for novice users.
Increase hardware vendor support. I don't really know how this is going to happen, since hardware vendors are notorious for doing only the minimum necessary to make their products work with Windows, and sometimes they don't even do that. They often don't even maintain support for older versions of Windows. Even huge hardware vendors like ATI have only lackluster Linux support at best. For the time being, as it has been for some time, you need to check to make sure a piece of hardware works with Linux before you buy it. Either that, or simply accept that you'll need a Windows machine in order to use it.
Audio/video processing. Sorry Linux fans, but Linux just doesn't get the job done in the audio/video world. Just try to author a DVD on Linux, and you're into a confusing tangle of downloaded packages with minimal functionality and conflicting prerequisites. Good luck if you want animated menus. And AC-3 audio? Forget it. By the time you finally get that DVD authored with animated menus and music, you could have authored a half-dozen DVDs on Windows and a dozen DVDs on Mac, with enough time left over to repaint your kitchen. This is an ironic comment in many ways because UNIX operating systems have always had good success with major Hollywood special effects firms (who can afford custom-written software), but for the home user looking to do a bit of audio/video work, it simply isn't there yet.
More widespread adoption of Flash 9, as the audio/video streaming Internet protocol of choice. Every time a Linux user runs into a website that expects you to have Apple Quicktime or Microsoft Windows Media, expect frustration. Flash 9 solves that problem, although it also creates dependence upon a single vendor, aka point of failure for the whole model. But as imperfect as that solution is, it's still better than the current unabashedly Linux-hostile audio/video streaming duopoly of Quicktime and Windows Media. Of course, there's always dark horse RealNetworks, and you have to respect their dogged determination to keep fighting their uphill battle, but they're a distant fourth and I don't expect them to overtake the leaders. Besides, they're an even dodgier corporate player than Adobe, with a checkered history of totally unwanted "enhancements", lousy installers, and annoying nagware/spyware bundled into their players.
Is this a pipe dream? Maybe, and maybe not. Time will be the ultimate judge.
Written: 2007-03-31
Continue to Microsoft and IBM
Jump to: