A Tentative Well-Wishing for 20 Years of .NET

The 20th anniversary of .NET is upon us this week and with it, Microsoft is pulling out all the stops in celebration of what it says is “the most loved framework by developers for three years in a row now — 2019, 2020, 2021, according to Stack Overflow’s developer survey.”
First launched in 2002, .NET is, in some ways, something that Microsoft can roll out as evidence of its changed ways over the years. It went from a company embroiled in a monopoly case just a year before this release, to one that later decided to turn around, mend its former ways, and open source .NET Core.
New blog post “.NET and C# Versions – 20th Anniversary ♥”. An attempt at visualizing 20 years of features.#dotnet #dotNETLovesMe #csharp
cc: @coolcsh @runfaster2000 @shanselman
👇https://t.co/BeFMyOYaEa pic.twitter.com/DM7TiQfS6Y— nietras (@nietras1) February 14, 2022
“When Microsoft made another major transformation, this time towards open source, .NET was also at the forefront,” Microsoft writes in this week’s celebratory blog post. “By 2012, we had fully open-sourced the ASP.NET MVC web framework and were accepting contributions. It was one of Microsoft’s first major open-source projects at the time. In 2014, we started to build a cross-platform and open-source .NET on GitHub and were floored at the incredible support and contributions from the open-source community.”
Certainly, in comparison to the Microsoft we once knew, there has been a massive shift in its approach to open source software and openness in general. Indeed, these days, Microsoft is also synonymous with another giant in the world of open source, its now-subsidiary GitHub — as well as the npm Registry and countless other projects. Microsoft has transformed from a company that was once led by a man who said that “Linux is a cancer” to one that has more recently welcomed Linux to the Windows desktop, among numerous other open source endeavors.
In one blog post celebrating 20 years of .NET, SUSE senior technical evangelist Robert Sirchia writes of this transition.
“What started as [a] closed source project is now fairly open source. Which is a big transition for any company to do. The transition was not only opening up the code but changing the way it ran,” writes Sirchia, later adding that “all in all I am one of the many people whose career has changed because of .NET.”
Not mentioned in any of these celebrations, of course, is perhaps the biggest test that .NET has seen in terms of its openness. Last year, we wrote that Microsoft’s “hot reload” drama was a reminder to pay attention, and it still seems like a worthwhile mention.
At the time, the internet was awash in talk of how Microsoft was essentially trying to pull a fast one on its .NET community by reversing course and removing the “hot reload” feature from .NET, instead scoping it to Visual Code 2022. Only after a series of cryptic tweets from the likes of Scott Hanselman and others within Microsoft, an article asking if we can trust Microsoft with open source, and a much followed and supported pull request asking to revert the decision, did Microsoft reverse course and issue an apology.
All that’s to say, perhaps all’s well that ends well, and we should indeed celebrate 20 years of success with a now open source framework. In the same breath, vigilance may be necessary should we want to celebrate another such anniversary in the future.
I found a potato-quality video in my archive of how the Visual Studio “Infinity Logo” launch picture was taken. I know @BethMassi and I are in there, and many other .NET people from 20 years ago! It was taken on the recently-demolished sports fields in the Redmond main campus. https://t.co/zMC0bMhXSe pic.twitter.com/uHiYLQWV1t
— Eilon Lipton (@original_ejl) February 15, 2022
This Week in Programming
- GitHub Gets Diagrams with Mermaid: No longer do you need to embed images in your GitHub Markdown files to show content like flowcharts, UML, Git graphs, user journey diagrams, or Gantt charts. Instead, GitHub now allows users to include diagrams in their Markdown files with Mermaid, a JavaScript-based diagramming and charting tool that uses “Markdown-inspired text definitions” to dynamically create diagrams in the browser. The text to create these diagrams uses Mermaid syntax, which is used to “generate an iframe that takes the raw Mermaid syntax and passes it to Mermaid.js, turning that code into a diagram in your local browser.” For further details on exactly how GitHub takes this text and turns it into diagrams, click on through to the blog post; but suffice to say, users now have an easy way to create diagrams without ever leaving the GitHub editor.
- Touting Rust’s Sustainability: Amazon has long been vocal about its use of the Rust programming language, where it is in use for projects such as Firecracker, the virtualization tech behind AWS Lambda, or Bottlerocket, a Linux-based container operating system written in Rust, or even Amazon Simple Storage Service (Amazon S3), Amazon Elastic Compute Cloud (Amazon EC2), and Amazon CloudFront. While there are numerous reasons to adopt Rust — its performance and memory safety high among them — Amazon has outlined another in a blog post this week about sustainability with Rust. Performance, of course, might have something to do with that sustainability, as efficiency has a direct effect on how much power an application uses; and Amazon points to a study from a few years ago that found that “C and Rust significantly outperformed other languages in energy efficiency,” with both coming in at “roughly 50% more efficient than Java and 98% more efficient than Python.” They further note that it is Rust’s delivery of memory safety, without giving up performance, that puts it above C in being the choice for sustainable development. If the environmental impact of your software performing at scale is of interest to you (as it well should be), Rust is definitely a top contender and AWS’ blog post on the topic is a good starting place.
When your work measures your contributions in lines of code. https://t.co/iMCJBGEUeo
— Scott Williams 🐧 (@vwbusguy) February 15, 2022
- TypeScript 4.6 Release Candidate: The next released candidate (RC) of TypeScript landed this week, with TypeScript 4.6 RC, a follow-up to the recent beta release of the same version. There have been a few changes since beta, such as control flow analysis for destructured discriminated unions and the es2022 output target, but otherwise, the TypeScript team has been mostly focused on bug fixes and the ever-present performance improvements. Beyond that, however, TypeScript 4.6 will bring with it the ability to allow dode in constructors before super(), control flow analysis for destructured discriminated unions, improved recursion depth checks, indexed access inference improvements, more Syntax and Binding Errors in JavaScript, and the TypeScript Trace Analyzer. There are also some breaking changes to be aware of, so make sure to check those out before you go updating anything.
- Visual Studio 2022 Marches On: Microsoft has announced that Visual Studio 2022 17.1 is now available and with it comes a number of “exciting additions,” including enhancements in Git, Search and Navigation, productivity improvements in C# and C++, and added capabilities for personalizing colored tabs. All of these, you have seen in the previews leading up to this point, but now it is all ready for production use — alongside a number of fixes that were suggested by the community. Beyond that, Microsoft says that there are also some productivity enhancements and improvements to solution close performance. For the full list of what’s new, head on over to the Visual Studio 17.1 GA release notes. At the same time, the first preview of the second update to Visual Studio 2022, 17.2, is being released and will bring with it bug fixes and improvements for .NET MAUI development, continued enhancements in the Git experience, support for new C# 11 refactorings (such as a new language feature called raw string literals) and new capabilities for local development with your data using SQLite, Postgres, and MongoDB data sources. Last but not least, Visual Studio 2022 for Mac Preview 6 is also out this week, with a bunch of fixes for problems found in last month’s preview, as well as continued progress on the move of the IDE to native macOS UI.
- Survey Says! The results of two surveys about two rather popular languages hit the web this week, with the release of the Rust Survey 2021 results and the 2021 State of JavaScript finally making its way out as well. Both offer some insights into what’s what for developers interested in two of the most popular languages out there today, so make your way over and give them a look.
just got handed a company laptop with 2500 cuda cores
my job is to write javascript and manage calendars
— sigfig (@sigfig) February 13, 2022