Will desktop Linux ever grow up? I ask because, after years of monitoring this wannabe Windows-killer's progress, I've yet to see it emerge from its awkward adolescent stage. Despite numerous attempts by Canonical (Ubuntu's creator) and others to dress Linux up and make it more respectable, this technological paean to anti-establishmentarianism remains as unpolished as ever.
Case in point: X.org. The FOSS crowd has made much of the open source platform's graphical prowess (I still remember those cool Compiz/Beryl fan videos from YouTube's early days). But as my contemporary Thom Holwerda of OS News fame found out the hard way, the current iteration of the Linux video driver stack is more or less a house of cards. Seemingly innocuous actions, like resizing a video playback window, can trigger a catastrophic failure of the X Window System, taking any running graphical applications down with it.
[ InfoWorld's Galen Gruman shows why desktop Linux would work well as the standard OS for many business and government users | Neil McAllister shows why it may be too late for desktop Linux to gain treal traction. ]
At least some of the blame for X's instability can be laid at the feet of the video card manufacturers who, until very recently, have actively resisted opening their driver code to the FOSS community. However, the responsibility for X's reputation as an unstable windowing environment ultimately rests with the X.org Foundation. As the keeper of the X Window System in the FOSS world, X.org has to wrestle with myriad competing agendas (such as EXA/UXA, GEM/TTM, and randr) while propping up what is now a 30-plus-year-old code base. And as Holwerda's recent experience demonstrates, it's not doing a particularly good job.
By contrast, Microsoft continues to receive kudos for the robustness of its Desktop Windows Manager (DWM) and Windows Display Driver Model (WDDM) architectures, both introduced with Windows Vista and since expanded and improved upon for Windows 7. By abstracting the display driver logic from the rest of the OS, Microsoft has created a more crash-resistant windowing environment, one in which a failure of the driver code almost never results in a loss of applications or data. I can't recall the last time I had the kind of catastrophic failure under Windows that plagued Holwerda's Ubuntu installation. It just isn't a problem in the post-Windows XP world.
Linux proponents are quick to defend X.org, noting that the environment is currently undergoing a great deal of code churn, with new features being added and old ones revamped at a breakneck pace. However, this sort of answer -- blaming instabilities on short-term growing pains from rapid innovation -- is becoming a bit of a broken record with Linux. There's always some reason why it's not quite stable yet, and why getting the basics (like reliable video playback) right has taken a backseat to the all-important initiative to integrate tomorrow's emerging open source standard for next year's hybrid implementation of some future capability that will almost certainly change the world as we know it.
The bottom line: Linux is still too hyperactive for its own good. Its development process is plagued by false starts, half-completed initiatives, and a desperate need to please way too many interested parties. In other words, Linux is a teenager. And until it grows up and takes responsibility for the basics -- like providing a stable windowing environment -- it'll never be taken seriously by IT.