Well, the only reason why GNU/Linux or other UNIX like OSs have not succeeded is because Microsoft is investing hard in trying to make other OSes look like they do things wrong, that is, hardening interoperability all they can.

Having deployed dozens of networks, worked with servers serving all kind of contents, setting up entire offices with workstations, all with different OSes... I have learned one thing: Windows is only really useful to play games.