Technology: What ails the Linux desktop? Part I.
The basic failure of the free Linux desktop is that it's, perversely, not free enough
There's been a string of Linux desktop quality problems, specific incidents reported by +Linas Vepstas
, +Jon Masters
, +Linus Torvalds
and others, and reading the related G+ discussions made me aware that many OSS developers don't realize what a deep hole we are in.
The desktop Linux suckage we are seeing today - on basically all the major Linux distributions - are the final symptoms of mistakes made 10-20 years ago - the death cries of a platform.
Desktop Linux distributions are trying to "own" 20 thousand application packages consisting of over a billion lines of code and have created parallel, mostly closed ecosystems around them. The typical update latency for an app is weeks for security fixes (sometimes months) and months (sometimes years) for major features. They are centrally planned, hierarchical organizations instead of distributed, democratic free societies.
What did the (mostly closed source) competition do? It went into the exact opposite direction: Apple/iOS and Google/Android consist of around a hundred tightly integrated core packages only, managed as a single well-focused project. Those are developed and QA-ed with 10 times the intensity of the 10,000 packages that Linux distributions control. It is a lot easier to QA 10 million lines of code than to QA 1000 million lines of code.
To provide variety and utility to users they instead opened up the platform to third party apps and made sure this outsourcing process works smoothly: most new packages are added with a few days of latency (at most a few weeks), app updates are pushed with hours of latency (at most a few days) - basically it goes as fast as the application project wishes to push it. There's very little practical restrictions on the apps - they can enter the marketplace almost automatically.
In contrast to that, for a new package to enter the major Linux desktop projects needs many months of needless bureaucracy and often politics.
As a result the iOS and Android platforms were able to grow to hundreds of thousands of applications and will probably scale fine beyond a million of apps.
(Yes, we all heard of the cases where Apple or Google banned an app. Don't listen to what they say but see what they do: there's literally hundreds of thousands of apps on both of the big app markets - they are, for all practical purposes, free marketplaces from the user's point of view.)
The Linux package management method system works reasonably well in the enterprise (which is a hierarchical, centrally planned organization in most cases), but desktop Linux on the other hand stopped scaling 10 years ago, at the 1000 packages limit...
Desktop Linux users are, naturally, voting with their feet: they prefer an open marketplace over (from their perspective) micro-managed, closed and low quality Linux desktop distributions.
This is Part I of a larger post. You can find the second post here, which talks about what I think the solution to these problems would be:https://plus.google.com/u/0/109922199462633401279/posts/VSdDJnscewS