Today I say with a heavy heart these words:
Linux has ceased to be a viable desktop solution.
I will continue to push for and support Linux for servers, since I still wholly believe that it is the absolute best solution for servers over Windows and even over other Unixlike systems such as *BSD. Linux’s structure for configuration of server systems is unparalleled and its performance is superb.
However, that is no longer the case for desktops. The reason is that Linux is no longer a simple desktop OS.
Over the past several years, Linux has grown bigger and has tried to become more of a player in the desktop market. To do so, it has had to add simple configuration options for those who wish to migrate from Windows. At first, Linux did well in this — it simply created easy to use terminal and GUI configuration programs that would do what the rest of us knew how to do in the background — edit configuration files. But as it continued, some Linux developers thought it would be best to change this simple method — simplicity being the backbone of Linux’s power — to something approaching Windows in its mind-numbing complexity. dbus, hald, pulseaudio, and other things were added, not to assist the system that was already there and working, but to replace it. And many times, they simply didn’t work.
I write this after weeks of trying to get Linux up and running on my system. After years of easily and quickly getting Linux systems up and running on many different types of systems, and only running into small, easy to fix issues, I have been blocked by issue after issue after issue, each absolutely insurmountable even after days of investigations and searching. Xorg has become a slave to automatic configurations and a mountain of things behind the scenes deciding that what I put in xorg.conf just isn’t good enough for it — it decides on its own that I don’t know what I’m talking about when I say I want certain resolutions, or when I specify sync ranges for my monitor. It just goes off and decides that I have to have a gigantic screen at 60Hz. And even though I’m certain that the fglrx (ATi binary) drivers are partially to blame for some of this (plus bizarre crashing and other issues), it seems that the Linux system itself interferes with it from what I have seen in Xorg.0.log.
There are also sound issues — pulseaudio, esd, alsa, oss, all competing and fighting each other for the use of the sound device. Some things work fine, some not at all, and it’s seemingly random what does work and what does not.
What Linux needs is to return to a much simpler system. Is it that blasphemous to ask that sound mixing might be handled in the kernel, so that different sound systems don’t have to worry about whether or not the sound it’s making will be heard? Is it too much to ask to simplify Xorg and the surrounding systems where it actually uses xorg.conf as it should?
I’m really sad that it had to come to this. I have been a long time supporter of Linux, but it’s just gone too far now. The configuration of even the most “easy to use” distro and the most “power user friendly” distro (Ubuntu and Gentoo, respectively) is now down to luck and what you have on your system. Configuration of something that should be a simple editing of a configuration now involves investigating tons of settings, many involving these new “automated”, “easy-to-use” daemons that are supposed to make things “easy.”
Easy, my foot. Desktop Linux is now so far from what it used to be that it’s no longer usable. *BSD is just as bad or worse, and Apple has us paying premium prices for underpowered hardware just for the privilege of running its (admittedly nice) OS. So basically I’m stuck back in Windows, where even if things are overly complex, its monoculture design at least doesn’t make its complexity a limitation. I know that may sound like I’m praising Windows too much, but trust me, it is damning with faint praise. I do not like its design, but right now, there is nothing better. I am forced to run a poorly designed OS on a system that should be flying along with a well-designed, simple, good OS. Thanks to Linux’s poor design choices over the last several years, I can’t have that.
So long, Linux. I hope to come back one day when your developers have figured out that Linux is supposed to be simple rather than complex. Until then, I guess I get to wait for Windows 7 while stuck in the very poor Windows Vista.