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 opinion:
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 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 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 system.
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.
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 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.