The short answer is because they don’t know better. It’s sad that after all these years people compares the latest Linux or OSX versions with Windows 95 and they actually believe that this is a fair comparison.
The most annoying “bashers” are the teachers who are simply immature and unprofessional! Somebody who is in a position of authority as a teacher has a duty of fairness. I think people should praise Microsoft for praiseworthy things and criticize it for things that should be criticized. There’s no shortage of topics in both departments and exactly the same goes for Linux and OSX and everything else. Ignoring the things Microsoft has implemented all these years, the innovations they’ve made in computer languages, development tools and in almost every aspect of computing, is ignorant, naive and sometimes simply stupid. Microsoft is far from perfect and they have done some horrible mistakes but they’re also responsible for some of the most amazing pieces of codes today. They have some of the best developers in the world, and if you are really serious about being a software developer you should stop your silly fanboy war and start learning from them. Limiting yourself to follow just a few Microsoft hater developers is bad for your career and for your character.
P.S. I recommend this video: