Where is the Linux desktop going, and where should it go? This is a hot topic, and an important one. Unfortunately the discussion usually starts from the wrong premise, that the Linux desktop has only recently achieved parity with its Mac OS X and Windows cousins. Not so! The Linux desktop has been superior since its early days, and would have to go backwards to achieve parity.
Now which Linux desktop are we talking about? That's a good question, and that is superior item #1: multiple desktop environments and window managers to choose from.
A Mighty Power Tool
The PC has been a mighty multi-purpose power tool from its humble beginnings. Unlike a lot of multi-purpose tools, it can do many things extremely well. You other old geezers probably remember when hardware was the limiting factor, and impatient do-it-ourselfers were continually upgrading just to keep pace with the software. Then in the early 2000s hardware caught up, and now even cheap commodity hardware has more power than we need. (Except for ghastly script-heavy poorly-coded Web pages that bring quad-cores to their knees; I laugh when people say all they need is a cheap low-power gadget for email and Web surfing. Good luck with that!)
The benchmark for the user interface has always been Windows. This is understandable due to Microsoft's lock on the market. Back in the olden days of Linux most Linux users came from Unix backgrounds. Anymore I'll wager that the majority of Linux users learned Windows first, and a goodly number of Mac users as well. Which has little to do with preference and merit, and much to do with lock-in. I started with Mac, then Windows, then Linux.
I don't like to see Linux chasing Mac and Windows, except for copying the good stuff. For the most part Linux chasing Windows is going backwards. Especially the part where each release grows by gigabytes without providing any additional functionality. Windows 7 Pro eats up a good 22GB, while Windows XP Pro consumes less than a gigabyte for itself. What do you get for all those extra gigabytes? Minesweeper, Solitaire, Notepad... um... oh yeah, drastically higher CPU and RAM requirements. Maybe to power all the nagware.
Chasing the Mac interface might make sense. But listen to Ingo Molnar's extremely insightful comment on user interface design:
"I think what the KDE4 and Gnome3 folks are doing is that they have picked Apple (and to a lesser degree, Google) UI products as their role model...the problem as I see it is that they tried to achieve this by mimicking Apple products, instead of implementing a high quality UI development process...You cannot really gap that difference by taking a giant leap in the "product space", regardless of the existing user base and regardless of the quality of the landing...
"I think OSS UI projects are also making a big mistake by mimicking the development model of closed-source projects...We should realize that our future OSS developers are sitting in front of the device they are using, most of them are at most 100-200 msecs away from a server that the developers are using - they only have to be engaged intelligently ...
"Yet we are doing everything in our power to create silly artificial walls between developers and users."
Linux already has everything it needs to provide a superior user experience. Which users, you insightfully ask? Not Jim and Jane Sixpack, who find iPads too complicated because they can't decide which finger to poke it with. Jim and Jane aside, tablets and smartphones are wonderful devices filling a long-unserved need.
But, they are not PCs. Ever since the early days of Linux the Linux desktop it has run circles around Mac and Windows. Even back when it was raggedy and unpolished it was bursting with functionality. What good is pretty if it can't do anything, or doesn't let you do what you want? First make it do cool stuff and be reliable, then you can always pretty it up later.
Here is a partial list of things Linux can do, some new, most old, many of which Mac and Windows still can't and won't even try, or only with expensive third-party add-ons:
- Multiple window managers to choose from.
- Multiple desktop environments to choose from.
- Multiple virtual desktops, as many as you want and your hardware can handle.
- Live bootable CD, DVD, USB.
- Portable applications that run from USB on any computer.
- Easy to get what you need to fix it-- you don't have to keep the exactly right installation media for each PC you own, or the special secret codes, or hope and pray the authentication server actually works for once.
- Adaptable to multiple roles, from tiny low-power embedded systems to giant workstations with multiple monitors.
- Multiple mouse buttons.
- Complete keyboard controls.
- Endlessly customizable: make it your own.
- Give it your own corporate branding, roll your own customized distro and replicate it all you want to.
- Secure remote graphical desktop and helpdesk.
- Classrooms via remote graphical desktop, with the options to let users make changes or lock them out.
- Seamless integration of command line and graphical environment. You can have the console, graphical environment, and X terminals all going at the same time.
- Hall of mirrors: run multiple nested graphical sessions.
- Multiple simultaneous graphical sessions, not nested.
- Multiple monitors in all kinds of configurations.
- Easy software installation over the Internet.
- Secure remote networking.
- True multi-user.
- Easy patching and updates.
- Or manage software manually, from source code if you prefer. Say, Apple and Microsoft, where is that source code?
- Better Mac and Windows rescue tools than Mac and Windows offer.
- No silly artificial distinctions between desktop and server, business and home, big business, small business, etc. designed only to pry more money out of your bank account.
- ncurses: graphical environment without X11.
- All this newfangled compositing and fancy special effects are not my cup of tea, but I recognize their coolness, and they should drive video hardware support past its current dismal state.
- KDE4 Activities turns virtual desktops and multiple screens into independent environments, which is something nobody else does.
- You can be a fan and make suggestions without having attack lawyers sicced on you, like Apple did to a little girl.
- You can wade in and contribute without having attack lawyers sicced on you.
- You can talk directly to developers, or at least read their deep unfiltered thoughts on their blogs and mailing lists.
- Real interop, not the fake kind the Brand Xs peddle.
The better approach is not to throw all this great stuff away in the name of simplicity, of dumbing it down drastically to appeal to "the masses." An awful lot of Linux fans have this idea that when the Linux desktop reaches the perfect level of eye-candy one-button one-finger fabulousness then the masses will flock to it. And in a way they're right, as evidenced by the success of smartphones and tablets. But — and I repeat myself — PCs are not tablets and smartphones. And, for those good people who believe that a great GUI is "intuitive", meaning anyone can pick it up and instantly start using it, guess what the consistently-best selling O'Reilly books are: iPad and iPhone books. Go see for yourself. (The supposedly-superior Windows is there too.)
Freedom. This is the biggie. It seems a lot of Linux fans are squirmy with talking about freedom, like it's weird old hippie stuff that nobody wants to hear about. But the reality is that many people are interested. Many computer users, especially frustrated customers of the usual closed, proprietary vendors, are very interested in freedom: they like the idea of Richard Stallman's classic Four Freedoms, and recognize that these add considerable value to software.
They like the idea of freedom from crazy licensing schemes designed to confuse and overcharge, freedom from crazy unilateral end-user license "agreements" that dictate what you can do with your own property, freedom from lock-in, freedom from artificial barriers to interoperability and open standards. They want honesty and accountability, and freedom from the heavy overhead of managing proprietary licenses.
Cathy Malmrose, CEO of independent Linux vendor ZaReason, told me once that they investigated selling Windows, perhaps in dual-boot configurations. But they would have needed an extra staffer just to handle the compliance paperwork. It's just as bad for a business running even a bare complement of proprietary software, what with server licenses, client licenses, client access licenses to the servers, remote access licenses, terminal server licences and so on, all calculated for maximum redundancy. It's nuts.
So please, friends, don't sell desktop Linux short. It already towers head and shoulders above its proprietary cousins. We don't need to apologize for it because it has long provided a superior computing experience, and will only get better — as long we don't get derailed chasing inferiorware.