Their OS is souless. Their programming environment is overly complicated, mutated versions of existing OS's, the computing equivalence of fascism, they force their product on everyone by being just the right amount of compatibility when needed, the right amount of INcompatibility when not (Unix, Lotus123, etc) MS is in denial of this; they have no idea how disfunctional they are; though smart in business planning and predicting future trends, they suck at writing an OS, and take ages to figure out how to write good software.
In a few years, no one will even remember windows; it has nothing of benefit or substance in its OS code, no one will ever use it as a basis for which to design other os's (except their own next rev!).
As a programmer, I'm offended by Microsoft's abuse of:
MS has set back the development of software 10 years by forcing perfectly good application programmers into their crappy world of API madness, and learning a spaghetti OS which IMHO took two giant steps backwards from all other modern OS's. The windows OS is futureless; to be improved by any sense of the word would mean tossing it's base completely.
The good sign is that programmers are finally beginning to hate it, and are very ready to flock away to anything that is better. Now that they've gotten rich, they're tiring of sucking the MS nip.
My advice to programmers; write nothing in MFC; use portable GUI libraries like GTK, FLTK, and get the source, so you can fix bugs and help others. Whenever possible, avoid the MS black box.
Also, Microsoft has invented no technology I can think of that anyone else in the programming community wants to see expand into their own os's. MS has simply taken existing technologies, and mangled them (java, C) and offers nothing new to the community of any use. (It's all proprietary)
Sun gave the world java, SGI OpenGL, IBM the PC hardware (with the docs!), AT&T C and Unix, Apple and Xerox gave us GUI and windows paradigms. What has MS done? If they came up with anything good at all, you can bet it's proprietary. Any good ideas they come up with will not make it outside because of their own greed.
Many people don't know what I'm talking about these days when I say I think it will all just disappear. It's so big right now, few people can see life without it. Windows has absolutely no life of its own (only the applications have life). Windows' existance is justified only by the company's marketing hype, and business machismo; MS is just pushing blood through the dead body. Maybe they secretly wish they had something better, but obviously it makes no difference to financial success.
The windows disease that has festered and spread over the programming community for years, and is suffocating it. Perfectly good programs written in windows will have to be completely rewritten when Windows gets yanked. It is sad how busy programmers are going to be in the next few years re-rewriting apps.
The black age of pointless WIN32 and MFC programming needs to come to a close. It's only a short matter of time.