Opinion: Linux on the Desktop
Desktop Linux (GNU/Linux, the entire ecosystem) has been suitable
for non-geeks since about 2004. It works well, looks good, has
superior security and freedom from malware, has thousands of
applications covering almost every need, and costs nothing. In
spite of these advantages it has failed to win more than a 2%
share of end-user desktops. Why?
Note that Linux is the biggest player in the server space. Google
and Amazon have over a million Linux servers between them.
Most of the world's web servers, stock exchanges and scientific
supercomputers use Linux.
Here are the main reasons for low adoption by end users, in my
Fear of Change
People hate change. Linux is easier to use than Windows, but
requires scrapping familiar habits and learning new skills. For
most folks, this is two killer defects.
+ many competing flavors of Linux with different user
+ several window managers with application
+ several incompatible application packaging formats
+ library incompatibilities causing application
+ package naming and content variance causing
application dependency variance
+ library API changes requiring application
maintenance just to keep up
Application developers must be willing to support many slightly
incompatible versions of Linux. "Build once, run anywhere" is not
possible. Attempts at standardization have gone nowhere. In
contrast, Microsoft provides a stable standard that both developers
and users can depend on. Backward compatibility is carefully
planned, and programs from a decade ago still run.
No major company with clear staying power is making a desktop Linux
PC vendors are fearful of making Microsoft angry. They used to have
to sign exclusive contracts, but this was ruled illegal many
years ago. Now they get license discounts and promotion funds
from Microsoft, which means that nothing has really changed
and the monopoly power continues. This is the main reason you will
never find a Linux PC in a retail store. There are a few online
vendors of Linux PCs, including Dell.
Organizations switching to Linux must convert custom applications
and retrain technical staff and users, a potentially huge
cost. A few companies and government organizations have
actually done this.
Linux applications vary from excellent to unusable. The latter give
Linux a bad name. Some developers seem to think that letting
users find the bugs is acceptable. Others stop work when the
application is half finished.
Free Software Culture
Free software advocates are in denial and are not facing the
problems. One often reads "having many choices is good" or
"the Darwinian process will select the best alternatives".
This is also what they said 20 years ago. The freedom of Linux is
also its downfall. Developers have little regard for standards that
could constrain freedom or innovation. There are no effective
standards. There is no management and no road map. Every player
runs his own show. Linux movers and shakers do not worry about
this. They are having fun.
No Way Forward?
Legacy Linux (GNU/Linux) will become even more irrelevant and will
be abandoned by more developers. It is a shame that today's only
viable platforms involve high cost, malware galore, and massive
invasion of privacy. Linux could have made a difference, but lack
of management and standards has ruined the opportunity. The
solution would be to consolidate Linux development resources under
a unified management. Can you imagine Canonical, Red Hat, Linux
Foundation, etc. getting together to work on a common plan for the
future? Sadly, there is no chance for this to happen.