As If .NET Wasn’t Confusing Enough

While it’s evident that Microsoft is staffed with a lot oftop-notch people, history has empirically demonstrated that theyhave quite a few dregs as well: Just recall how disastrouslythe whole .NET thing was handled circa-2000.

For those who forgot, suddenly every product (including thosefinished or on the verge of being finished) became a part of the.NET vision, even if they had absolutely no interaction with the.NET technology stack: Windows Server.NET, Exchange.NET,Messenger.NET, SQL Server — all a part of the .NET generation –just as Microsoft declared everything in the generation before apart of the DNA vision (I still hear developers talking about”Microsoft DNA”, not really sure what they’re talking about).

As a developer who was heavily involved with the betas of whatwe call .NET today – a runtime and a framework, and the associatedtools, for building next generation solutions – I really had noidea what .NET was in Microsoft parlance. Just as ActiveX got muddled into a meaningless term, .NET was beinghijacked to basically mean “buy whatever is new or coming outsoon”.

Eventually that insanity stopped, and .NET collapsed down to asortof virtual-machine runtime, a framework, and a set of tools..NET 1.0 was one runtime, one framework, and Visual Studio.NET2002. .NET 1.1 was a new runtime, a new framework, and VisualStudio.NET 2003. .NET 2.0 was a new runtime, an expanded framework,and Visual Studio 2005 (note the dropping of .NET on the naming,given that Visual Studio, as always, also makes non-.NETapplications). There are countless assemblies and extensionlibraries available targeting each of them, and of course I canmake libraries tomorrow that target .NET 1.0, .NET 1.1, or .NET2.0, and it doesn’t magically evolve them into .NET 3.0.

Well it looks likeMicrosoft is at it again. They’ve decided that Vista’stechnology platform, WinFX (which will be partially backported), isso great that it can’t be just a set of assembliesor systems that the .NET runtime interacts with. No, it must be.NET 3.0! So now if you have the .NET 2.0 runtime,the .NET 2.0 Framework, targeting it with Visual Studio 2005, andyou add in the WinFX framework…voila, you have .NET 3.0.

Insanity. Absolute, unbelievable insanity. Perhaps there’s someamazing explanation — for instance that their April Fools projectran a little long, and they just got the output out — but Isuspect it is just more of the same that we saw circa-2000. Someshort-term euphoria over a gonna-be-released-soon project has themscrewing with the terminology yet again.

Already the boards are full of “So….does this mean WinFX comeswith LINQ?” (LINQ is one of the technologies promised for the nextreal wave of .NET)