Slashdotted this morning was a very interesting list of reasons for why Linux is "Not Ready" for general use on the desktop. It's quite an interesting list, although I would remove some things from it and add others.
Far from being an attack on Linux, I see this list as being a labor of love. Consider the parallel of chromatic criticizing Perl 5, and there almost isn't anybody I can think of who loves Perl more then chromatic does. He has a lot of good things to say about Perl, but he's also very vocal that things need to change to keep it strong and modern.
It's like punishing your children for misbehavior: You love your children, but sometimes you need to teach them important lessons the hard way.
I started using Linux a long time ago. I made what I now see as a mistake, taking a crash course using the "Core" linux distro. Core is a minimalist distro where users are expected to be power users who build the rest of the distro from source. By starting at the bottom, I was hoping I would learn quick, and I did. I quickly learned to scrap Core and move to a more full-featured distro. From there I moved on to Red Hat (back before it was Fedora, but not long before) and used that for a little while. At the time all this experimentation was happening my family was using Windows XP for their computing experience, and I have to say that the differences were staggering. Their computer was more usable on average (it did get virus'd up pretty regularly and needed cleaning and reformatting on a regular schedule), and it was easier to make configuration changes. Sure I had all the power in the world to monkey around in configuration files, but when you compare the time it would take me to look up a configuration change on the internet, find the appropriate config file, make my changes, reboot to make sure I didn't destroy my computer, etc, to the time it would take to make the same change in Windows it was almost comical that I was using Linux at all. Hell, Windows power users stopped having to edit autoconfig.bat by hand back in Windows 95.
My third foray into Linux was with Ubuntu, and I am much happer with it now as a full-featured replacement for Windows. With RedHat several years ago I still felt like I needed to keep a Windows PC around. Imagine trying to make changes to your internet configuration when you needed to look up all the complex documentation for it on the internet, to get a feeling for why I needed the extra machine. But with Ubuntu, the internet just works every time in any configuration I need.
That said, Ubuntu is still not perfect and I still run into the rare occasion when I see that Windows has implemented some particular thing better. The Asynchronous IO stuff that I wrote about a few days ago is an example of a place where I think Windows has a better approach at the fundamental level then Linux does. Of course that's not something that directly affects the experience of the average desktop user although for particularly sluggish programs it might help boost performance. I've also run into the kinds of problems that the list author mentions about audio and video configuration. I had a few really lousy Skype calls from my laptop before I was able to find the bad settings that were making everything sound bad (and I'll give you a hint, they weren't in the audio mixer that has the icon on the task bar).
I use Linux on my only computer, and I use it for almost all my needs. I do double-boot into Windows Vista sometimes, mostly for testing Parrot on that platform prior to a release. However, I do use my computer in a way that your average PC consumer does not: I do very little with audio or video and I'm willing to do a lot of stuff from the commandline. Is Linux ready for general acceptance by the PC consumer public? Maybe not yet but it is getting there in a hurry. I think the work that's being done by Canonical on Ubuntu is quite encouraging and maybe in a few more releases they will have reached that milestone where, for the average Joe Schmoe computer user, Linux is more usable immediately then Windows is. I hope that time comes soon.