Download the authoritative guide: Cloud Computing 2018: Using the Cloud to Transform Your Business
For the past few years, I find I’ve been repeating myself every six months. A new version of Ubuntucomes out. I download it; I try it out. And in the end I’m right back on my Windows 7 desktop where everything works anyway, and where I have even less incentive to trade up for anything but a Mac.
I give them credit for trying, though. Oh, how they do try. This time around, the big attraction is the Unity interface, which borrows elements from both Mac and Windows and ends up with the worst of both worlds. Outside of that…well, my not-yet-three-years-old notebook stilldoesn’t suspend and resume correctly.
Heck, it didn’t even startfrom Ubuntu’s live USB drive without me passing custom boot parameters. And then there was the time I booted and the left-click button for my touchpad wasn’t working, for no apparent reason. And…
And the beat goes on.
Believe me, I used to think Linux on the desktop was one user interface revamp away from hitting it big time. Now I realize the problem is much more fundamental: Linux was never created to serve an end-user market, and end users are hard to serve properly. The only way Linux can be so reworked is if someone removes it from its native environment and single-handedly shapes it into something else.
That’s a move which would inspire (and has inspired) no end of outrage from open source purists — and an effort some orders of magnitude larger than anyone wants to admit. “Desktop Linux”, it seems, may well be a contradiction in terms.
Picking your poison
For most people, personal computing comes down to two basic choices: Mac or Windows. The former is a little more expensive, but you pay for the privilege of using Apple’s ecosystem and end-to-end engineering. The latter is a little flakier and less consistent, but it’s improved drastically over the last several years — and you get instant access to what pretty much everyone else is running. And again, you pay for the privilege of using what they’ve engineered. By and large, you do get what you pay for.
Both of these environments have a few things in common, not the least of which being they were assembled from front to back by a single authority. Neither one is perfectlyconsistent, but they’re both of a high enough consistency that I can sit down at my buddy’s Dell PC or his Macbook and still find my way around most of the time.
Or, more important, in both environments I can write apps that only have minor internal differences and do not have to be regenerated from source to be useful. A lot of this is thanks to relatively stable APIs that allow third-party extensions to the system without needing access to its sources.
The vast majority of the time — especially as far as end users are concerned — that’s more than enough.
Users need more than just sources
Linux started as, and continues to be, a platform where access to source code and system internals is more significant than endpoints and delivery. This isn’t a bad thing by itself. It’s just that it also ends up being antithetical to what an end-user system is all about.
The pieces crucial to making a cohesive desktop are scattered between too many different authorities, and the end result is an environment where attempting to create stable software for end users is a lot harder than it needs to be. Worse yet, it’s an environment that is hostile to proprietary software — which, for all of the bile directed at it, isn’t going away anytime soon.
No serious attempt to create a Linux desktop environment has addressed these issues. The few that have (Corel’s stab at an end-user Linux comes to mind) all quickly vanished. Every attempt since then has revolved around various attempts to perform evolutionary improvements on the look-and-feel of the system. There’s been little or no attempt to create the one thing that Linux needs most: a total ecosystem for the user that’s a) consistent beyond superficial cosmetic stuff and b) not arbitrarily hidebound by the political limitations of free software.
If that sounds like a tall order to fill, it is. Don’t kid yourself into thinking otherwise.
What making a real Linux desktop would require
I’ve figured for a long time that the only way the Linux desktop distro creators could break out of their rut is if one of them broke rank and used Linux as source material for something that had little connection to its origins.
This would be, and is, tough. Not as a programming effort, but as a real-world logistics effort. You’d have to get hardware makers and application developers on board, and not in a token after-the-fact way. You’d have to forestall criticism from those who regard with suspicion any attempts to turn Linux or its derivatives into a commercial project. And you’d have to find out a way to fund the whole thing—something that most likely can’t be done on the relatively modest revenue generated by simply selling support, Red Hat- / Canonical-style.
Given that Windows and Mac have already done that heavy lifting and created ecosystems that provide 99% of the user populace what they need and are willing to pay for, it’s not surprising nothing like this has happened. The effort required is massive; the payoff dim and distant. Better instead to concentrate on markets where the results can be seen far more immediately.
Android was as close to that sort of project as we ever got, and it took the muscle and clout of Google to make it happen. What’s more, it didn’t happen on the PC — it happened in the exploding smartphone space, where the economics of phones made Android a worthy bet.
The results speak for themselves: ‘Droid phones are legion. And that’s despitethe frustrating inconsistencies between different handset makers and carriers, and the rather patchwork-quilt nature of the application ecosystem.
Android’s been edging that much closer to being the desktop that Linux simply can’t be, especially with the recent spate of Android-powered tablets hitting the market. But it’s intended more as competition for iOS, not the desktop proper, and ‘Droid’s evolution is going to continue to be rocky for a good while to come.
I’ve seen a few other attempts to take a stab at creating a new end-user software ecosystem, but they’ve been stuck in the early stages for years. Haiku OS, for instance, which was born from the ashes of BeOS. Technologically, it’s intriguing—but it’s still a long way off from being anything more than a nice idea.
And the beat goes on
None of this has stopped Canonical and Fedoraand the rest of the distro-rollers from doing their thing. They seem to remain firmly convinced that it’s just a matter of finding some combination of a couple of magical elements. And so each successive iteration of Ubuntu has interface tweaks and usability variations, but no substantial attempt to use Linux as a base to build a properly cohesive ecosystem.
It’s reminiscent of a car company changing styles of paint or dashboard controls but ignoring what’s under the hood, while the rest of the competition is rolling out hybrids and electrics.
Some people have said to me, why give them grief for giving a small but select group of people what they want? Well, no, I don’t mean to begrudge the folks who have made Linux their desktop system of choice. God love ‘em; they’ve got far more chutzpah than I.
But they need to remember they’re the exception. The fact that most people have no desire to dump Windows (or OS X) and install Linux, or root their phone, is not a sign of the decadence of the masses. It’s a sign that they have different priorities. I have never seen a single successful attempt to convince a non-technical user that it’s in his best interest to be a hacker.
I haveseen plenty of successful attempts to convince engineers and programmers that it’s in their best interest to understand what ordinary people want and need, and to give it to them in a way that they can further build on.
The evidence of that is all around us.