Your TV runs Linux. Your servers run Linux. Your router runs Linux. Your phone runs Linux. Your car runs Linux. You could run Linux on your PS2/3 console if you like, and soon Steam Machines will run Linux.
Why did Windows become pop? Dad could do some meaningless spreadsheet work and his boy could play some violent game, using the same machine. Today "the same machine" argument might not be as strong, as everybody has their own couple of devices, but I think that gravity towards an exceptionally much better and free system, which is continuously improving, is meeting the singularity as soon as game developers can make money on that platform. And since Ballmer there has been no competition; I mean did you even see Windows 2012 server?

In the near future, two things will happen. A genius on the same level as Linus Torvalds will pick up some distro and make that coherent, awesome-looking and remarkable, while at the same time keeping the good text-based configuration back-end. (It will be an individual doing this, no design-by-committee junk can pull this off.) This distro will then go on to take over the Windows market share. In the mean time Office will either bend or break. I'm sure Visual Studio will find it's counterpart and it's not going to be Eclipse. .NET will thankfully die, and Java and other virtual machines will fade away, at least on the desktop side, which hopefully will propagate to the Enterprise side in some further decades.
This change won't be overnight, but I'm giving it 10-15 years, tops. It will be free and technical people will be in control of their own machines once again. Text based configuration. No unknown DLLs during system boot. No broken packet management system. No .NET to make everything sluggish. No registry with GUID keys that nobody likes. No hopelessly retarded file system. And if you find something you don't like, you can mend it easily yourself. As long as there's some type of Visual C++, I'm really going to enjoy this ride!