Joel Spolsky's Working on CityDesk, Part Four is a good example of why I refuse to work with Microsoft tools for programming. Let someone else deal with the documentation headaches and lack of source code.
The Microsoft bashing is tiring but my main beef is lack of information. I've worked on two Microsoft ASP based web sites and both times the simplest problems resulted in hours if not days of frustration trying to figure out why certain functions wouldn't work. In all cases a lack of documentation prevented me from obtaining the answer.
Documentation is a pain in the butt to write but it makes things much easier for the programers / user. At least a Java stack trace while not pretty is better than a Microsoft error 9857362. Which BTW, will cost you something to figure out either via Technet or a support phone call.
Articles like Joel's remind me why I should strive to make the user experience better and at least strive for a clear message when developing.