- The operating system and GUI (Graphical User Interface) are tightly coupled. A simple delay, say, connecting to a slow network drive, brings the operating system to its knees. How many times, you have tried to bring up the task manager to end a task, but you were unable to do so, because Windows Explorer was not responding. This is a fundamental design problem with Windows.
- What works now may not work in the next version of Windows. NTBackup is a very good example. A nice, backup utility included in Windows XP is simply missing from Vista. Why? Microsoft sold Visual Basic as the ultimate programming language. If you invested your time and effort learning it, you are obsolete today. Can you imagine if you made this effort into learning C or C++, you will be reaping the rewards like a sound investment. Microsoft simply does not do it because it is not good for business.
- Microsoft's culture simply does not support command line automation. This may the developer in me talking. A GUI is of no use, when you can run a simple script to perform a repetitive task. Microsoft has made an inconsistent effort towards this issue.
- Last but not the least, what a bloatware it is. I think it is a game of improved hardware vs. Windows bloatware. The faster the computers become, Microsoft releases a version to make it slow. Have you seen how happy your XP system is when it just starts as a new born. By the time you loaded your service packs and patches, you start questioning your sanity for buying a computer which was supposed to be the most expensive at Best Buy.
As far as I am concerned, these are the main problems with Windows. People give Windows a bad rap. Oh, it is so easy to get virus on a Windows machine. My dear friends, it is as easy to get a virus on a Unix/Linux machine. The only difference is that there are not as many people dedicating their precious time writing viruses for Unix machines. I very rarely get viruses on my machine. I am very careful about what I install on it and always have a good virus scanner running.