@vesuvius: Just because a language is not supported in the future doesn't mean that the software you wrote for them will automatically stop working.  They are paying for a product.  You deliver them a product.  You make no guarantees that that product will last forever.  That is like saying that I paid a lot of money for Photoshop 1.0.  It should always work no matter what the future holds.  That just isn't realistic.  I wrote software in C++ 17 years ago that will still run even though it was using old tools and an old version of the language.

I can run Visual Studio 2003, 2005, 2008, and 2010 all side by side to support old applications if I wish.  You may not develop new applications using technology you know will be coming to an end, but that doesn't stop you from maintaining your existing applications for your customers.  I think it is just silly to say that Microsoft keeps changing directions every 2-3 years.  It reallys hasn't changed direction since 2002 (almost a decade) when .NET came out.  It has slowly evolved into more powerful development tools.  That is all that is happening today. 

I find it funny that people start complaining because Microsoft was so slow to keep up with changing techology (like staying with IE6 for so long).  They were getting left behind and are suffering the consequences of that.  Now they are trying to be more responsive to the changing technology landscape and people are complaining that they are moving too fast.