Microsoft is going to learn quite quickly that they are not the software engineers they think they are. While I'm sure they have internal security audits of their network software they just don't have the following that the true Unix, Linux, BSD, and other *nix variants have on the whole internet.
Its sad to say that Microsoft is looked upon as the bohemeth giant who writes software full of exploits, potential buffer overflows, and general security issues. This is why Yahoo, Ebay, Pay-Pal, and _most_ other web firms out there run *nix-based servers for their actual production machines and let the internal workers run the Windows platforms for day-to-day operations.
Microsoft likes to tie their non-operating system software into the operating system. Explorer, IIS, Active Directory..these are all issues Microsoft will have to realize that SOMEDAY people will come to their senses and realize that Microsoft is trying to do something impossible. This is why the Unix's out there continue to gain ground and perform server-side tasks so much better, especially Linux.
Of course the *nix environments have their fallbacks, but if you have the basic concept of navigating in a console environment and understand networking and network security there is NO REASON why the world of network administrators should be recommending Win32 and Win64 solutions to their IT managers and forcing companies to spend billions of extra dollars on software that costs money to upgrade. Yes commercial Unix operating systems do cost money, but I think Yahoo and Ebay do just fine with large clusters of FreeBSD boxes. Its been years since I've seen reports of Yahoo and Ebay being cracked and information being stolen.
I like the NT/Win2k platform as a desktop solution, because its stable and is low maintenance (if the end user isn't completely computer illeterate). But as for a web, ftp, and database solution, Microsoft has a lot of catching up to do. And in this catch up process they're making a lot of mistakes.
EDIT: And while we're on the topic of bad programming, I see a WebTrends logo on the bottom of this page. I briefly worked for WebTrends a couple years ago in their support department and found the company to be completely irresponsible and poorly managed when it came to fixing software bugs and resolving customer issues. I won't say what company, but one of WebTrends' best customers was on the verge of cancelling their multi-million dollar contract because the programmer responsible for resolving the problem this customer had was on vacation and wouldn't be addressed until he came back from the East Coast. I say, is that good business practice?