I am of this opinion... Every time Microsoft or other major software company releases a new technology, many developers quickly try to become professionally involved with it, which creates gaping holes in the support staff of organizations that still use the old technology. That spells opportunity for those who want to learn the old technology. The newercomers to the old technology may get more important assignments than they would, if they always chased the latest thing. Example: .NET created a shortage of COM expertise, and opportunity for developers to learn COM.
On a daily basis, I support apps written in PERL, Java, .NET (VB.NET and C#), classic ASP, VB6.
A good programmer shouldn’t have a difficult time learning new languages, even those they’ve never used before. Also today, being a “heads down” coder isn’t enough....you also need to be a business analyst, and a project manager, and interface with your users.....”Heads Down” coders get outsourced.