The BackgroundBefore I get into this, I want to lay out my computing history so that everyone knows where I stand. I got my first computer in 1979. I grew up in an era where you programmed almost everything yourself, and working directly in machine code for the Z80 wasn't uncommon.
I used WFW, Win95, and WinNT when I was with the government, and I got my NT certification at that time.
I started using Linux at the end of 1997 because Windows 95 was giving me such a headache and some people online said "Linux is just as good as Windows and can replace it completely." I've used Red Hat (or localized derivatives), Debian, and Ubuntu for the last eleven years or so. I've also played with every other Linux distribution and Free/Net/OpenBSD.
That is to say, I think I've got a good view of what's usable (and what's not) in Linux because I've been on it exclusively for a decade now. I'm enough of a geek to understand some of the deeper problems. I'm also not a Windows hater (Microsft is another matter): I don't think people who make informed decisions and choose Windows have their heads screwed on wrong.
The FanboysAs I mentioned in The Background, my first experience with Linux was being told "It can completely replace Windows." That was 1997. Windows 95 was difficult to configure. It broke all the time. It didn't actually have that much functionality. The Internet wasn't huge yet. Netscape was still soluble. At that time, I thik that Linux could replace Windows just because there was so little Windows could actually do.
Still, they were exaggerating. No, Wine couldn't run anything I threw at it. Linux was stable, but only until I tried to edit a configuration file and screwed it up, only to leave the system unable to boot. There were very few applications, and the only real desktop the first year was KDE1.
This type of fanboyism continues to this day, and I try to balance it out when I see it. Ubuntu cannot and -- more importantly -- should not replace every OS on the planet. No OS should be in that situation. The monoculture we've had for twenty years has really hurt computing.
I'm a fan of Free software and go to great pains to limit my use of non-free stuff, but it's unrealistic to ask the average computer user to take up the Free software cross. They just don't care. They don't even know the difference between RAM and a hard disk, or an office suite and an OS.
Don't even get me started on the subject of the Ubuntu Forum. What a whitewashed mess that is!
Fanboys create expectations which can't reasonably be met by anyone. They hurt Linux adoption. If you are one of them, tone it down, step back, and get some perspective. Don't be a door-to-door Linux missionary.
HatersEvery major news source is quoting Linsux and LinuxHater these days. The Gnome and Ubuntu bloggers commonly say "we need to listen to them because they have something important to say." It's bullshit.
Linsux and LinuxHater are filled with useless flames and disinformation. Maybe 1% of the comments are constructive. LinuxHater especially is held up as being knowledgable about Linux and a great source of criticism, but he mostly just trolls for page views. I'm not talking about me disagreeing with his opinions. I mean that he just gets his facts wrong at least half the time. I'm pretty sure it's intentional, having seen semi-professional trolls on Slashdot for ten years.
There is plenty of room for constructive criticism. Linux distributions need it. The critic doesn't even need to be tech-savvy. Someone saying "I want to unmount my USB key, but I can't figure out how to do it and the directions on the help page don't work" tells developers something about something that need to be fixed. Of course, having someone give a proper backtrace and even a patch is more useful, but criticism is criticism.
As a counter-example, let's quote the most recent LinuxHater blog:
When will you lusers fucking learn? In case you haven't noticed, users want Flash. Say it again. Users want Flash. Anything you do to make Flash not work is your fucking fault. Not Flash's. Yours. At some point in time in the past, Flash worked on Linux. In some configuration. Otherwise Adobe wouldn't have released it. Whatever you did to deviate from that configuration is your responsibility. Not Adobe's. The fact there are a bazillion Linux configurations that Adobe couldn't possibly test: OSS sound, or Alsa sound, or alsa-oss sound, or pa-alsa emulation, or pa-alsa-oss-jack-esound-vagina emulation, or all of the above inside nspluginwrapper, or whatever the fuck... it's all your fault. Not Adobe's.Flash is buggy. It always has been. Back when it was just Flash 7 for Linux, it sucked. Falsh 9 was actually better, but it's still buggy. The problem is that Flash has become the cornerstone of sites like YouTube, meaning the average user deals with Flash much more often. Whether the distribution uses OSS or ALSA or Jack has little to do with it (libflashsupport is a POS, though). Flash was written to use straight ALSA, which has been the defacto audio system for as long as I can remember. It still sucks in that single configuration. Blaming the Linux community for poor software design by a vendor is just silly. Should I blame Windows because NOD is awful software?
Constructive criticism would be to promote the development of SWFDEC, which is usable for most things but still not quite there. Since Adobe has liberated the Flash specs, though, and now allows those specs to be used to create viewers, SWFDEC has a good chance of catching up. Instead of saying "You fucking losers break Flash," say "What's a good solution?"
Haters bring nothing to the table, and we shouldn't delude ourselves into thinking that they do just to appear to be neutral.
FUDFear, uncertainty, and doubt are use by the haters and the fanboys to try to gain mindshare. Just look at BoycottNovell or Get the Facts as examples. There's not much you can do about other people's actions, so you can't really stop FUD.
The problem with FUD is that it's similar to political talking points. You repeat something enough times, and your opponent addresses the counter-point enough times, and people begin to accept it as truth. The opponent is in a no-win situation.
What the opponent shouldn't do, though, is respond with counter-FUD. Giving responses which the observer knows to be false only entrenches the FUDer's position. Respond with real facts that quickly and obviously prove the FUD incorrect.
The TruthHere it is, guys -- The Truth (TM) about Linux.
- Which is best?: There is no "better" operating system or Linux distribution, because "better" is an opinion based on personal taste.
- Which is more secure?: While the may actually be a more secure OS, knowing which one by looking at numbers of vulnerabilities or viruses is not possible. The system is too complicated to boil down to a single number.
- Which supports more hardware?: If you want to use Linux on a piece of hardware that isn't (well) supported and you don't know how to write device drivers, you'd better not even start.
- Linux does support more hardware than Windows, but many of the common consumer devices aren't in the list.
- Linux supports general chipsets so often doesn't have the same number of features as Windows drivers. The upside is that these drivers are almost always more stable than the specific ones.
- Unless your all-in-one printer is from HP, you're probably out of luck.
- You'd better check the compatibility of that portable music player before you buy or you may have to swith OSes to use it.
- Installation: Linux installation is difficult. Any installation is difficult. The average person shouldn't be installing an operating system. Getting several to work together on the same system can be frustrating if anything goes wrong. On supported hardware (i.e. drivers on the OS disk) without worrying about multi-boot, Windows and Linux are probably about equal for the OS itself. If you include the time to install extra applications, Linux probably wins.
- The terminal: You will eventually need to know the terminal or have a friend who knows it in order to use Linux. Your Windows-using friend will eventually have to have someone clean out the registry or reinstall for him. Operating systems are complicated. Still, once the installation is complete, for day-to-day activities, you don't don't need to use the terminal, ever, if you don't want to. I still prefer the terminal for many things, though.
- Installing applications: There is no "one-click" installation in any operating system which has security. Suse has something called "One Click." Windows users have a double click. Ubuntu users can double-click a .deb or single click on an apturl link. These all require authentication.
If you have an Internet connection and your application is in a repository, installing an application on Linux is almost certainly quicker than installing the same application on Windows. Linux is and always has been a networking operating system. If you don't have Internet, installing anything will be difficult.
If your application is not available for your distribution, you're in for some pain, but this situation is no different than if your progam doesn't have a Windows installer. Just about every program has a Windows installer, though.
- How many applications?: 20,000? How many are stable and work well? Half? HUBackup has been broken and unusable at all sice Ubuntu 6.06LTS. It's still in the repositories. The aplications on Linux are often smaller and less featureful than Windows versions. This is Unixy. The average user doesn't like that. The good news is that Freedesktop.org is helping to create specification which help Unixy applications work together better. We're seeing real strides in desktop usability right now.
- Codec problems: Codecs are available for just about everything. They may not be in your repository. You may need to purchase them from, say, Fluendo.com. DRMed media, however, is another matter. If you were naive enough to buy crippled media, you'll need to continue using that platforms the vendor supports until they stop supporting you at all. Oh, and if you wanted to watch the Olympics in Linux, good luck with that.
- Linux is ugly: The terminal is ugly. OK. More seriously, UIs for Linux don't get the love of some other major OSes. Many of the Gnome themes are very plain. I find KDE1-3 butt ugly. KDE4 looks good but isn't really usable yet. XFCE is GTK, just like Gnome. So's LXDE. GnuStep is an eyesore. Hmmm. Wait a minute .... These are all my opinions. Yours may vary. Beauty is in the eye of the beholder. Why else would my original Debian theme for this blog have been pink?
- No games: There are plenty of games on Linux. Most are half-finished. A lot of them use engines released from closed-course houses like Id. Still, there are a lot of really good games for Linux. When SDL was conceived, it made games like Wesnoth possible. SDL has become the DirectX for Linux. Oh, and since SDL works on Windows, too, the games are cross-platform.
Still, Linux has fewer games than Windows does. I have a console that I turn on once a month, so I don't really care, but this is an important issue for some people. If you are a hard-core PC gamer, do yourself a favor and don't get deluded into thinking you'll be happy in a 100% Linux environment.
Help me find great games for Linux!
- Support: MS offers support for a fee. OEMs offers supprt depending on the contract. Apple offers expensive support (J/K). Major Linux distributions offer support in one-time or contract bases. All of them have communities for supprt where whether you get an answer or not will depend on the whim of the people on the board. They could even call you names like "newbie" or tell you to go back to your mom's basement. Welcome to the Internet. If you want guaranteed support, buy it. I'm pretty sure you'll get better answers with a Linux vendor who knows the product backwards and forwards, though.
I don't want to address support for small to large companies on this point, as the argument become long and complicated, depending on too many factors.
- Office: OpenOffice.org is a full-featured office suite, but it's big and generally slow. It's also not MS Offfice. Gnome has Abiword, which is great and the plugin architecture for 2.6 makes it very featureful, but it's still not MS Office. KDE has KWord, which has always been under-staffed, but it's still great, and it's still not MS OFfice. IBM even recently released Symphony for Linux. News flash: it's not MS OFfice, either.
My point? If you're a casual user, any of these will probably work for you. I'd recommend Abiword if you use Gnome or XFCE and KWord if you use KDE, but OpenOffice.org is great, too, and will probably be more familiar if you're coming from MS Office. On the other hand, if you've spent the last ten years learning the ins and outs of MS OFffice so that you can use all the features, you'll never be happy starting over. Stay on Windows, use Crossover Office, or get a VM going.
For me, though, I am an idealist who is addicted to freedom. I can never move to Win or Mac.