.NET Framework Three-Point-Oh?

2 minutes read

I'm going to warn all of you out there now: I'm about to break down the walls and get honest about some of my feelings. If all you want to hear about are unicorns, pretty pink bunnies, and how cuddly-wuddly the whole world is, I encourage you to leave now. No group hugs here. No kumbaiya here. No other camp songs either, for that matter. With that said, let's now move on to the real "schtuff", shall we?

I would like to talk a little bit about the decision to rename WinFX to .NET Framework 3.0. Do I agree with the re-branding of WinFX to .NET Framework? Absolutely. I believe it does communicate the fact that the various WinFX technologies are a _part_ of the Framework now and it will lead to less confusion in the long run. It is now clear that the various WinFX technologies are part of the core platform and, in my mind, that is "A Good Thing."

So, if I am behind the re-branding, what is my problem? Well, my problem is three simple syllables: "three point oh". I can see more confusion being caused by using the 3.0 label for this "version" of the framework in the long run. What does .NET Framework 3.0 have to do with C# 3.0 or the 3.0 runtime? Nothing. What version of the runtime is packaged with .NET Framework 3.0? 2.0. Are there any breaking changes between .NET Framework 2.0 and 3.0? Nope. Why? Because the .NET Framework 3.0 uses the 2.0 runtime. Huh? You mean there's no breaking changes even with the major rev of the Framework? No, because they are the same runtime under the hood.

For me, it is slightly reminiscent of the naming mess Sun is in with Java. After all, you have J2EE (Java2) 5.0 (which actually uses version 1.5 of the Java language). It's disappointing as Microsoft had done relatively with with 1.0, 1.1, and 2.0. So, what are the other options?

One option is .NET Framework 2.1. To me, this option is only slightly better than 3.0. True, people won't think of breaking changes taking place. However, this still suffers from the fact that the Framework version is different than the runtime version (and hence, leading to some of the same confusion). Cross this off the list.

Another option is .NET Framework 2.0, Service Pack 1. With this option, the framework version is the same as the runtime version, so that confusion is alleviated. With a "Service Pack", it is not clear that there are a bunch of new features with it though. At least, not by definition it's not. However, isn't this what Microsoft basically did Windows XP, Service Pack 2?  I still think there would problems convincing marketing to go with this title as I think it would be more difficult to "sell" this to customers. I'm not in marketing though, so I could be way off on this one :). This is probably the one that I like out of the other options (including ones that other people have posted about).

So what will I personally do about this? I guess I'll just sit back and accept it (with a frown). Overall, I believe it is perhaps the lesser of all evils once the decision was made to integrate it into the .NET Framework "product". At times like this, there is one word that comes to mind: Unfortunate!

Disclaimer: as usual, this is just one man's opinion and yours might differ.

Updated:

Leave a Comment