You've recently learned a good deal about the next version of the CLR here on Channel 9
. One of the things that is top of mind for engineers who create and consume
the .NET framework (CLR + BCL) is compatibility with previous versions. In fact, much like security, compatibility is something that is front and center during feature design meetings: "Will this break an application that depends on the version we're updating?".
The question is easy to understand, but extremely difficult to answer without extensive testing, implementation refinements, extensive testing, implementation refinements... In some cases, due to impossible compatibility requirements, new features do not see
the light of day. It's just part of the business, part of the dance of software evolution in the context of real world customers who depend on current iterations of .NET.
Here, we meet some of the folks who spend a great deal of time ensuring that the compatibility bar is met, breaking changes are isolated and communicated and bridging the gap between dreaming up new features and not breaking old ones. This is a very hard job
and often does not receive the credit it deserves (well, at least from the outside looking in). Principal Test Manager Alain Raitt, Program Manager Preeti Kurup, and Program Manager Lead Mike Downen share with us the challenges and opportunities of compatibilty,
the advances in the state of the art of compat testing and future directions. Much thanks to you three and the legions of engineers who ensure that the next versions of .NET remain as compatible as possible with older versions.