Happy Birthday .NET Framework!

OPINION: It's been ten years since .NET Framework was launched at the 2000 PDC.

June 22, 2010 was the 10th anniversary of the .NET Framework. It's hard to believe that it has been ten years since .NET was publicly unveiled in Orlando, Florida at the Microsoft Professional Developers Conference (PDC) in 2000.

I was there at the time and I can say that it was quite an exciting experience with a lot of buzz and lots of emphasis on SOAP and this new language called C#, and of course the new Visual Basic (VB) and lots of talk about garbage collection and performance comparisons between Java and .NET, and the performance of C# and VB.NET to C++ and VB6. I finally threw away the "alpha" bits on CDs that I had from that conference just a few months back. They had been sitting in a drawer in my study along with other various bits from conferences over the years and it was time to move on. I still have the T-Shirt from that conference though which either says something about my wardrobe or the longevity of physical cotton as compared to technology... or maybe the doctors are right... I may be a hoarder.

Now we've got C# 4 and it finally has better COM interop along the lines of closer to what VB.NET has had since day one, with C# now supporting a decent and easier to use late-binding model. And we've got overall better support across the board on so many other things in the .NET Framework landscape. I do find it a bit ironic that C# is now, ten years later, getting better COM support. My guess is that Microsoft finally accepted the fact that despite all the flaws of COM, it was still so darn successful that expecting everyone to just drop it and do nothing but .NET and C# after a couple of years may have been too optimistic.

Of course that was before Google became what they are today, and keeping that legacy Office VBA stuff humming is valuable to Microsoft. But other forces are at play. Apple is resurgent and Google and Amazon ignited a firestorm of cloud-oriented development. The funny thing is, Microsoft at that 2000 PC actually talked about what it called the "Internet cloud" as a computing paradigm, and described how .NET would fit into the concept with HTTP-SOAP and XML. With .NET Framework 4 there are much better "cloud" hooks, in the form of Windows Azure, but I digress from my reminiscing.

I remember Don Box's pre-conference talk on SOAP and "boxing data" across processes regardless of where the process ran, and the wonders of doing SOAP-encoded data serialization and XML to help on all of the messy interfaces. There were two demos that really stuck with me that day and opened my eyes to the potential "openness" of .NET and the power of what Microsoft was pushing. I saw a framework that promised to finish what Java had started, and that had the potential to overcome the stagnation and bloat that was weighing down the Java effort.

One demo was a non-Microsoft browser on a Macintosh hitting an IIS Web server serving up ASP.NET dynamically created pages and making SOAP calls to multiple Apache servers on Linux running a JVM for the SOAP service that were themselves making calls to Windows servers that had a C#-based .ASMX SOAP-XML Web service, which itself was making calls to an internal COBOL.NET application. The second demo was around cross-language polymorphism, where a VB.NET program made a call to a C# program that added an overloaded method to an existing method written in COBOL.NET that the method in COBOL.NET was actually an encapsulated method call into VB.NET and all of this in the same process space. There may have been many higher languages used but the call stack of course deep down was all CLR executing compiled MSIL.

I knew then that during my previous many years of coding that I had never seen that kind of cross-process, cross-language work take place so flawlessly and seamlessly, and after seeing changes made and compiled during both demos I got religion and found myself turning into a fanboy for .NET. Now, ten years later not all that was said and shown at the unveiling transpired or came to fruition, but so much did. And there have been many other things that have come along to extend and improve upon many of the concepts presented and discussed. Even today the excitement and potential around .NET is still there for me.

So, happy birthday to our "technology stack of choice" and lift a pint or two in its name, for without .NET many of us on this thread may not have a job or a career, or at least possibly not one as cool as .NET development.

The opinions expressed here are the views of the writer and do not reflect the views and opinions of Citigroup.

About the Author

Jim has over 15 years of financial services industry experience, focusing mainly within the B2B space. He has worked in data mining, vertical software markets, distributed client-server technologies and e-commerce, and has more than a decade of experience in designing, building, deploying and managing large distributed application systems using Microsoft technologies.

comments powered by Disqus


  • Creating Reactive Applications in .NET

    In modern applications, data is being retrieved in asynchronous, real-time streams, as traditional pull requests where the clients asks for data from the server are becoming a thing of the past.

  • AI for GitHub Collaboration? Maybe Not So Much

    No doubt GitHub Copilot has been a boon for developers, but AI might not be the best tool for collaboration, according to developers weighing in on a recent social media post from the GitHub team.

  • Visual Studio 2022 Getting VS Code 'Command Palette' Equivalent

    As any Visual Studio Code user knows, the editor's command palette is a powerful tool for getting things done quickly, without having to navigate through menus and dialogs. Now, we learn how an equivalent is coming for Microsoft's flagship Visual Studio IDE, invoked by the same familiar Ctrl+Shift+P keyboard shortcut.

  • .NET 9 Preview 3: 'I've Been Waiting 9 Years for This API!'

    Microsoft's third preview of .NET 9 sees a lot of minor tweaks and fixes with no earth-shaking new functionality, but little things can be important to individual developers.

  • Data Anomaly Detection Using a Neural Autoencoder with C#

    Dr. James McCaffrey of Microsoft Research tackles the process of examining a set of source data to find data items that are different in some way from the majority of the source items.

Subscribe on YouTube