Originally Posted by nathris
Its wasted keystrokes. Either you hold the shift key down or constantly toggle caps lock. PLUSWHENYOU TYPEINALLCAPS ANDINFREQUENTLY USESPACES INSTEADRESORTINGTO INCOMPREHENSIBLEANDLONGACRONYMS ITMAKESITHARDERTO ACTUALLYREADTHECODE ANDUNDERSTAND WHATIS GOING ON.
And I understand that much of the way it is has to do with backwards compatibility. That's the other thing I hate about the WinAPI. Why exactly do we have to maintain backwards compatibility for a 16-bit OS in our 64-bit apps again?
It looks like they're really putting some effort into fixing the issues though. I know they're capable of making a decent API. Transitioning from an XNA app to a native Windows app is like visiting the Louvre to gaze at the Mona Lisa, then travelling to the south of France to look at neolithic cave paintings. WinRT looks promising, hopefully we'll see WinAPI phased out in Windows 8/9.
16-bit applications will not run on 64-bit Windows.
But to answer your question as a whole, Microsoft have retained compatibility with programs because people may not upgrade to the latest version of Windows if their favorite program does not work. This also goes with businesses whose line of business applications may be so old that they no longer have access to the developer, the source code or both and can't shell out the resources to re-write the software from scratch. Not to mention that the already in-place line of business application has been in use for so long, so it has been tested, and its users know that it can handle certain loads and scenarios. The newly written version may not. These are the points that are often missed. If you want to know more I'd suggest you visit Raymond Chen's blog at http://blogs.msdn.com/oldnewthing
where he explains why Windows is the way it is and provides some excellent explanations regarding backwards compatibility.
It does look like they are starting to transition away from Win32 with WinRT though, which I do like very much. And I wouldn't disagree if you said Win32 was a PITA the deal with!