Actually, there are several problems with Linux, and there is a really good article over on Phoronix about several of them. But the main issue with Linux was humorously summed up in this XKCD cartoon.
I’ve been a fan of *nix’es since the mid-80’s. At that time, I had PC-Unix (bought from an outfit somewhere in Washington which no longer exists) running on my 386 system, which I was using on a contract. I brought my own system onto the site, and I had the only system in the building capable of running more than one program at a time. Even then, I recognized that *nix was programmer-friendly, but extremely user-hostile. The attitude of the typical *nix programmer seemed to be “if you don’t know how to use it, you don’t need to be running it,” and the only error message in the earliest versions of Unix was:
Yup, just a single, naked question mark. If you didn’t understand what it meant from the context of whatever you just did, then you were obviously unqualified to be using Unix. And the “man” (or help) files all were written with the assumption that you were already an expert Unix user, and just needed a reminder of some obscure syntax. Coming up to speed on Unix took a substantial amount of determination. Worse yet, pleas for help from the Unix community usually got a “RTFM” response.
Things aren’t quite as bad now, but the running joke remains: “The typical Linux programmer doesn’t even know what the print command is called this month.” Oh, and like the hapless Linux programmer in the cartoon, every time I use the tar command, I have to look it up, and I usually capture whatever it was that I needed to do in a shell script so that I don’t have to go back and look it up again, at least not soon.
I am seeing some hopeful signs, particularly from Ubuntu. Despite Richard Stallman’s public dissing of Ubuntu, they are at least on the right path for user-friendliness. Not everyone in the world is a high-powered programmer like Stallman (who, IMNSHO, has gotten entirely too full of himself) who is willing to put up with the sort of nonsense illustrated by the aforementioned XKCD cartoon.
I am currently working on a couple of Linux projects; 1) installing a dual-boot Debian 6 on my new Asus laptop (which is turning out to be more challenging than I thought it should be), and 2) completing the “Linux From Scratch” tutorial, which looks like it will be pretty time-consuming (but mostly waiting for something to build, so I can multitask). The trials and tribulations involved in doing an installation of Debian 6 on my Asus is fodder for another blog post.