A discussion about why Linux has been so slow to take off made be realise that, essentially, Windows is like cola, Linux is like fruit juice. Its marketing that matters.
Fruit juice is better for you. It is tastier unless you have developed a sweet tooth by getting used to heavily sweetened soda with a few favourings thrown in, but it is quite hard to get people to drink it instead.
The difference is that if a product is strongly branded, the owner of that brand had a strong incentive to push that brand. So Coca-cola spends a fortune on marketing their cola, Pepsi does the same with theirs, and so does everyone else in the game with their own.
The end result is that colas are heavily marketed. No one has the same budget to spend on fruit juice. Yes, there is marketing spend, but not anything close to comparable. The problem is that consumers know that one brand of orange juice is pretty much like another (with some variations in quality). No one owns brand that matters: “orange juice”, so no one pushes it. All the vendors would gain if someone did, but there is no incentive for any one to be the company that picks up the tab — the old problem of paying for a common good.
Windows is Coke, Apple is Pepsi, and Linux, with its multiple suppliers, is like fruit juice. Ironically, the existence of multiple competing suppliers is a key reason it is better for consumers, but there is no budget to tell them that.
Of course this means that the markets for both beverages and operating systems are failing to deliver optimal results. The usual fix for this is government intervention — that why governments build roads. I would suggest spending public money on promoting fruit juice, and ,pre than 100% tax breaks for open source vendors marketing expenditure (similar to those given in Britain for any company’s R & D, for example) would go a long way to fixing both problems.