Several years ago I was somewhat amused by the core Linux communities extreme focus on Linux on the desktop. More specifically, the focus was on Linux on *their* desktops because, after all, Linux was by the geeks, for the geeks. At that time, I was interested in enabling linux to run on larger hardware, as were several other folks working for vendors of larger hardware platforms. The initial and, even somewhat today, continuing resistance to scalability enhancements seemed painful at times - the ongoing refrain was that scalability could not hurt performance on desktop platforms. In other words, the primary focus of at least the kernel community was on the desktop systems.
Several years later, there are a number of blogs, papers, analysis like
this one, which continue to show that Linux adoption on the server side has far surpassed the adoption rate on the desktop. There is some irony in the fact that the primary focus was on desktop for years before there was any focus on servers, and that in some ways the focus on desktops possibly slowed down the rate of development enabling high performance servers.
A further irony is that the standards for scalable code remained in general so high that I believe desktop performance improved as well from many of the enhancements designed for larger systems. Add to that that most of the server software takes advantage of a few key kernel APIs in the networking space, the locking space (futexes, epoll, etc.) that server and infrastructure applications tend to perform quite nicely on Linux. At the same time, though, most desktop software has become larger, more complex, more divergent on Linux, resulting in lower adoption rates of the Linux desktop and related client software.
This seems to be a case where the desktop communities have had a different and distinct focus from the Linux kernel community, who, in many cases actually enabled a richer set of desktop client software because of its general availability, low/free cost, full development environment (for free), etc. I don't completely understand how the desktop community failed to achieve as much market adoption overall as the server community did. There are probably lots of reasons, too numerous to go into here.
The good news is that there is a lot of focus now on Linux on the Desktop. Everything from the extremely enjoyable "
Why Userspace Sucks" by Dave Jones
(LWN coverage is great!). His
slides (tar.gz) are available as well. Then there is the
Portland Project which has a
wiki where they are trying to find commonality in some of the basic services offered on the desktop. OSDL has also
Desktop Linux initiative which is looking at the big picture, basically understanding all of the related open source communities, identifying gaps, finding commonalities, addressing ISV porting issues, etc. And, as part of the Desktop Linux initiative, they have set up a group of
desktop architects as the focal points for these discussions.
Now, all of this work in progress doesn't mean that the solution is at hand or that it is easy. However, judging from reports on Novell's SLED, Red Hat's Fedora Core 6, Ubuntu & siblings, etc., there are a number of usable desktop environments today. One of the key problems that these desktops have been fighting is the old battle cry "But it isn't Microsoft!" Well, yeah, right, it isn't. Maybe in many ways the Linux desktops are better, in fact. Well, and there's the rub - there isn't just *one* Linux desktop that one can compare to Microsoft. There are many. And they are all different. And they don't have as many packaged applications on the shelves at Walmart or Costco. And, for various reasons, the Linux Desktop hasn't reached that "tipping point" where it gains a respectable following of ISV applications that are on par with all those specialized apps on the shelves at those high volume retail or wholesale stores.
The past three or four years have been "The Year of the Linux Desktop!" Are we closer? Not according to the sales/marketing/installation numbers. Are the numbers wrong? Maybe. But are they *that* wrong? I don't think so. Linux desktop adoption is definitely dragging, despite the rapidly maturing capabilities of the Linux Desktop.
Maybe 2007 will be the year of the Linux Desktop...