"Orcas" .NET Framework compatibility
As you know, work is currently underway in my group for the next version of Visual Studio which we call internally as “Orcas”.
Visual Studio “Orcas” is designed to enable customers to rapidly create connected applications on the latest platforms and with the highest quality user experience either individually or as part of a team.
We’re shipping the next generation programming framework that includes Windows Presentation Foundation (WPF), Windows Communication Foundation (WCF) and Windows Workflow Foundation (WF) in Windows Vista. We’re also making this available for the Windows XP platform. Both of these items will be available prior to the release of Visual Studio “Orcas”. So we have been spending a lot of time thinking about how we should service these components. We wanted to make sure that we are really customer focused on how this impacts you to ensure that your experience with the next version of VS is a seamless one.
Jason Zander wrote a blog on Framework compatibility last year in the VS 2005 context which is a good read on compatibility.
The approach we are taking is aimed at minimizing the impact of delivering new features and functionality by servicing existing runtime components in-place and then advancing the platform with new assemblies. Internally we’re referring to this as the “Red and Green” model which I’ll explain below.
“Red” assemblies include things like WPF, WCF and WF (which will ship as part of Windows Vista) and .NET Framework 2.0 that shipped with Visual Studio 2005. Our goal for dealing with “Red” items is to deliver service pack like compatibility. We are going to try very hard to minimize the overall number of changes being done in "red bits" to help reduce churn and achieve very high levels of compatibility.
“Green” assemblies are where we will be introducing new functionality into the platform. The aim is to have any new feature be additive (for example new controls) rather than a reimplementation of an existing feature (outside of the servicing I mentioned above). Finally we want to ensure that installing any new assembly will not impact an existing application. For example, for C# language in Orcas, we will make a small "red bits" change to allow you to get at the new compiler and the new compiler is then a "green bits" addition.
If you write a component that depends on a “Red” assembly you can be assured that we’re going to do everything we can to ensure binary compatibility for your code even as we update the .NET Framework and WPF, WCF, WF as we move forward. All the major new features you’ll see from us will appear in the “Green” assemblies so you can feel comfortable that both your new and old code will work on the target machine.
The “Red and Green” model will help us deliver a great new product that makes your experience adopting it as easy as we can. Look forward to more details on this as we make more progress.
Namaste!
Comments
Anonymous
May 18, 2006
The comment has been removedAnonymous
May 18, 2006
I have to agree with JohnGalt's comment. I thought the whole point of .NET's versioning system was that you could run side-by-side.
You're already putting wiggle-words into your sentences like "we’re going to do everything we can to ensure binary compatibility for your code." That's very definitely not the same as "we will assure binary compatibility." You already have a versioning system that makes it so you never have to touch a version after release. Why would you want to mess with that?
This sounds like a really dumb idea, and the whole "Red Green" thing just makes it sound worse. Ever seen the "Red Green" show? Not the guy I want planning my version compatibility scenarios.
-DonAnonymous
May 18, 2006
I agree with the first two Posters.
Jens SamsonAnonymous
May 18, 2006
The comment has been removedAnonymous
May 20, 2006
I think you're doing the right thing.
Aim for compatibility and performance.Anonymous
May 20, 2006
With the recent LINQ CTP, XLinq's feature set is getting close to what we plan to release in "Orcas". ...Anonymous
May 21, 2006
Doesn't Side by Side Cure All?
Soma posted in his blog how we plan to produce an updated version of...Anonymous
May 22, 2006
I agree with the previous posters regarding backwards compatiblity. One other thing I think that Microsoft should do is always make fields, properties and methods in base classes protected, not private. This is a HUGE HEADACHE because you are only exposing enough that if I need to make a simple change, I have to rewrite half the functionality. This is a poor example of how to write base controls. I could have written two lines of code to add custom sort functionality to the GridView control, but because you didn't expose anything i had to rewrite about half the code.Anonymous
May 22, 2006
To assist developers, Microsoft is assigning a traffic light color scheme - red and green - to assess .Net Framework updates. Or, if you prefer, a Christmas tree color combo. In a blog entry entitled, "Orcas, .Net Framework compatability," Microsoft's..Anonymous
May 23, 2006
The comment has been removedAnonymous
May 23, 2006
does 'orcas' support existing .net 2.0 coding?Anonymous
May 27, 2006
The comment has been removedAnonymous
May 30, 2006
During the past few months, the Visual C++ team allocated many of its development resources towards addressing...Anonymous
June 07, 2006
For the Orcas release we want to only fix bugs that won’t create barriers to adoption. We have created...Anonymous
June 09, 2006
On two life altering occasions I heard that phrase spoken, and writing it down still makes me weak in...Anonymous
June 10, 2006
Earlier today, I was working on my article on the timeline for .NET releases over the next 18 months....Anonymous
August 28, 2006
The title of this post might actually be more appropriate if it was called what aren't they planning....Anonymous
October 03, 2006
Didn't I say it two weeks ago that API naming is the most difficult thing? :) My BCL post on System.TimeZone2Anonymous
October 10, 2006
Ever since Kathy Kam announced on her weblog that a new type named TimeZone2 will be introduced intoAnonymous
October 17, 2006
I finally got around to downloading the Orcas September 2006 CTP bits, and started to play with it aAnonymous
November 02, 2006
Microsoft has released the October 2006 CTP of Visual Studio Codename "Orcas". If you have the availableAnonymous
November 27, 2006
3 dos feedbacks que postei no Connect receberam resposta hoje. Segundo a resposta, os feedbacks...Anonymous
December 06, 2006
Microsoft has released the September 2006 CTP of Visual Studio “Orcas” as an image for VirtualAnonymous
December 06, 2006
Microsoft has released the September 2006 CTP of Visual Studio “Orcas” as an image for VirtualAnonymous
December 08, 2006
Microsoft has released the September 2006 CTP of Visual Studio “Orcas” as an image for VirtualAnonymous
February 02, 2007
PingBack from http://www.buayacorp.com/archivos/cross-site-scripting-en-aspnet-y-la-respuesta-de-microsoft/Anonymous
February 15, 2007
Незабаром в нас буде нова версія .Net Framework 3.5, яка схоже, як і 3.0, буде спиратися на базовий .NetAnonymous
March 16, 2007
Green and red bits where introduced at the release of the .NET Framework 3.0. Somasegar talked aboutAnonymous
April 21, 2007
Ο τίτλος δεν έχει σχέση με τον Ολυμπιακό και τον Παναθηναϊκό. Το κόκκινο και το πράσινο χρησιμοποιούνταιAnonymous
August 08, 2007
While installing VisualStudio 2008 Beta2 I was surprised that the NET framework 2.0 installation gotAnonymous
August 23, 2007
Theres a whole lot of new stuff in Networking in Orcas. Some features are going out as part of redbitsAnonymous
August 23, 2007
Theres a whole lot of new stuff in Networking in Orcas. Some features are going out as part of redbitsAnonymous
August 27, 2007
PingBack from http://blackfalconsoftware.wordpress.com/2007/08/27/net-net-35-explained-simply/Anonymous
August 31, 2007
Visual Studio .NET 2008 (codename Orcas) is just around the corner. With the release of Beta2 a few weeksAnonymous
October 02, 2007
Two months ago, Scott blogged about the multi-targeting support in Visual Studio 2008 . I worked on thisAnonymous
October 02, 2007
PingBack from http://msdnrss.thecoderblogs.com/2007/10/02/fxcop-rule-for-multi-targeting/Anonymous
October 02, 2007
PingBack from http://msdnrss.thecoderblogs.com/2007/10/02/fxcop-rule-for-multi-targeting-2/Anonymous
October 02, 2007
PingBack from http://msdnrss.thecoderblogs.com/2007/10/02/fxcop-rule-for-multi-targeting-3/Anonymous
October 23, 2007
The comment has been removedAnonymous
November 08, 2007
.NET 3.5 November Ship Date AnnouncedAnonymous
November 08, 2007
The comment has been removedAnonymous
November 09, 2007
Late to the game as usual, but I just wanted to say that I agree with the majority of posters that backward compatibility should not be a primary design goal of a new version. Its not that is has no value, but its just not worth it if it means holding back other more important fixes or features. I completely agree with Sean McLellan's post; if I upgrade to a new version, I already know that I will have to make some code changes (especially since you can't guarantee 100% backward compatibility, no matter how hard you try). So what if I have to make some extra changes to deal with breaking changes? EVEN IF those changes are actually fairly extensive, its worth it if it means that the new version is better and more usable. And if its not worth it to people like Bill and his banking system, they don't have to upgrade! If you're so worried about your ancient mission-critical system, why are you upgrading to a new version in the first place? Shouldn't you stay with what you know works? In short, backward compatibility simply isn't worth the price you (MS) are forcing us to pay.Anonymous
March 19, 2008
As many people will have noticed, we released Windows Vista Service Pack 1 this week ( read about theAnonymous
March 19, 2008
PingBack from http://msdnrss.thecoderblogs.com/2008/03/19/what-does-windows-vista-sp1-mean-for-developers/Anonymous
March 19, 2008
As many people will have noticed, we released Windows Vista Service Pack 1 this week ( read about theAnonymous
January 07, 2009
The comment has been removedAnonymous
January 21, 2009
PingBack from http://www.keyongtech.com/4485107-orcas-and-highlander/4Anonymous
May 29, 2009
PingBack from http://paidsurveyshub.info/story.php?title=somasegar-s-weblog-orcas-net-framework-compatibilityAnonymous
June 08, 2009
PingBack from http://cellulitecreamsite.info/story.php?id=8057Anonymous
June 09, 2009
PingBack from http://greenteafatburner.info/story.php?id=2871