Microsoft definitely knows how to write software, okay? They're really good at it. They ship a lot of it. There are many people there who are brighter than you and I and they know their stuff cold.
Microsoft is full of
- legacy stuff that is really hard to change (many, many reasons for this, few of them pleasant but all of them real)
- conflicting priorities (which bugs do we fix? will we destabilize the product if we fix them? are there more important things to do?)
- political bullshit, in the atmosphere of which it is hard to do the right thing
I left Microsoft three years ago, having spent 11 years there. I saw some howlingly bad software written (little of which shipped), and there are definitely groups there that are stronger than others, but I would never apply the phrase "fundamentally they don't know how to write software".
As far as I can tell, general management incompetence, including of course "political bullshit", is most responsible for their post-XP problems (along with becoming too toxic for healthy peer companies to want work with them, but I'm not sure that matters when enough of the people at the top are so bad).
Although ... what would you say was responsible for the failure of Longhorn? Wasn't that in part technical? Or did that derive from higher up?
Bill Gates actually touched that topic in is Reddit AMA. If I remember correctly, the bar was set up too high (i.e relational file system) and within the constrains it was a big challenge and at some point they had to deliver.
But #1 would seem to be more ambition than Microsoft could deliver at the time.
That's weird, all the file-io operations in windows store apps are async for the very reason of not blocking the UI thread. How big was that folder? I'm geniuly curious.
http://blogs.technet.com/b/markrussinovich/archive/2005/08/2... (not precisely the same thing, but related)
I've personally seen opening a folder full of photos produce a crash dialog pointing the blame at an Nvidia DLL.