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, IMO:
Fear of Change
People hate change. Linux is as easy to use as Windows, but requires re-learning familiar habits. For most folks, this is both frightening and time-wasting.
  + many competing flavors of Linux with different user interfaces
  + several window managers with application compatibility issues
  + several incompatible application packaging formats and tools
  + library incompatibilities causing application program incompatibilities
  + package naming and content variance causing application dependency variance
  + library API changes requiring application program maintenance 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 system.
PC vendors are fearful of making Microsoft angry. They used to have to sign exclusive contracts, but this was ruled illegal 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 small online vendors of Linux PCs. 
Conversion Costs
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 is no effective standards body. Every player runs his own show. Linux movers and shakers do not worry about this. They are having fun.

The Way Forward?
Linux on the desktop has not been able to compete with Microsoft and Apple. Google is about to enter the desktop market with a more capable Android. Legacy Linux (GNU/Linux) will become more irrelevant and will be abandoned by more developers. It is a shame that our only viable options involve high costs, malware galore, and massive invasion of privacy to better target advertising. Free software could have made a difference, but lack of management and standards has ruined the chance. The only solution would be to consolidate resources and standardize. Sadly, there is no chance for this to happen.