Microsoft is reversing a decision to remove a key feature from its upcoming .NET 6 release, after a public outcry from the open source community. Microsoft angered the .NET open source community earlier this week by removing a key part of Hot Reload in the upcoming release of .NET 6, a feature that allows developers to modify source code while an app is running and immediately see the results.
It’s a feature many had been looking forward to using in Visual Studio Code and across multiple platforms, until Microsoft made a controversial last-minute decision to lock it to Visual Studio 2022 which is a mostly paid product that’s limited to Windows. Sources at Microsoft, speaking on condition of anonymity, told The Verge that the last-minute change was made by Julia Liuson, the head of Microsoft’s developer division, and was a business-focused move.
Microsoft admits it made a mistake
Microsoft has now reversed the change following a backlash, and anger inside the company from many of Microsoft’s own employees. “We made a mistake in executing on our decision and took longer than expected to respond back to the community,” explains Scott Hunter, director of program management for .NET. Microsoft has now approved the community’s pull request to re-enable this feature and it will be available in the final version of the .NET 6 SDK.
We asked Microsoft to comment on the fact an executive ordered the change, but the company didn’t want to discuss the controversial decision. “We have taken steps to address the issue that some of our OSS community members have experienced,” says a Microsoft spokesperson in a statement to The Verge. “Hot Reload capability will be in the general availability build of the .NET 6 SDK available on November 8th.”
Microsoft’s blog post doesn’t address this controversial decision, though. Instead, it suggests it was simply a mistake to remove the code instead of simply disabling it, and not a business decision. “In our effort to scope, we inadvertently ended up deleting the source code instead of just not invoking that code path,” says Hunter.
While the reversal will be a welcome one for the .NET community, the explanation and circumstances around this incident won’t sit easy with those who value transparency around such decisions.
“As is true with many companies, we are learning to balance the needs of OSS community and being a corporate sponsor for .NET,” says Hunter. “Sometimes we don’t get it right. When we don’t, the best we can do is learn from our mistakes and be better moving forward.”
This eventful episode came after weeks of unrest in the .NET community over Microsoft’s involvement in the .NET Foundation. The foundation was created in 2014 when Microsoft made .NET open source, and it’s supposed to be an independent organization that exists to improve open source software development and collaboration for .NET. A resigning board member questioned the role of the .NET Foundation recently, asking whether it’s “here to enforce Microsoft’s will on .NET open source, or are you here to help foster and promote a healthy community?”
A recent controversy also led to .NET Foundation executive director Claire Novotny resigning recently and others questioning the independence of the .NET Foundation given Microsoft’s special privileges. Microsoft has certainly damaged some of the open source work it has been building on for 10 years with this u-turn, and the company still has plenty of work ahead to improve relations with the .NET community and the issues around its influence on the .NET Foundation.