1) Some of Yahoo's major open source projects are java based that alone is bad
2) Instead of supporting major, mature open source projects with good traction in the .NET world (NANT, NHibernate, NUnit, ...) MS instead chose to reinvent proprietary wheels (LINQ, ...)
We all know what the 2 other E's are...