Microsoft this week released the C# Dev Kit for Visual Studio Code (VS Code), which creates a more powerful and reliable C# experience in the code editor. But while the news was welcomed by the community, one particular point sparked controversy: full use of the C# Dev Kit requires user registration and a Visual Studio license. Not all developers like this decision because the C# Dev Kit is an extension of C# support. But Microsoft has a business based on its Visual Studio integrated development environment (IDE) whose sales it needs to protect.
C# Dev Kit is an extension designed to improve the experience of developing with C# in VS Code. The goal is to provide VS Code with a more streamlined, productive, and reliable C# experience. The C# Dev Kit does not replace the existing C# extension, but extends the excellent language services capabilities it offers. Developers can choose to continue using the updated version of the existing C# extension or enhance their experience by adding the C# Dev Kit. The latter consists of the following elements: the C# extension, the C# Dev Kit extension, and the IntelliCode for C# Dev Kit extension (optional).
According to Tim Heuer, Senior Program Manager, the time it took to display IntelliSense on a reference solution with 40 projects and 500,000 lines of code dropped from 38 seconds to 3.5 seconds. The C# extension was recently updated and is now supported by a new, fully open-source Language Server Protocol (LSP) host. The new LSP creates a powerful, extensible, and flexible tools environment that easily integrates new experiences into C# for VS Code. According to the company, the source repository for this extension is being migrated and will be available no later than next week.
From a technical point of view, the new extension was well received by C# developers, as many of them felt that the previous C# support in VS Code was not up to par. For example, the comments on the old extension say: If the goal of this extension is to pass Visual Studio, then congratulations, you’ve done a great job. On the other hand, a review of the C# Dev Kit says: Great, this makes VS Code usable and almost usable as a replacement for Visual Studio, it’s definitely usable as the main editor for .NET now.
However, there is a catch: to fully use the C# Dev Kit, the user must be registered and have a Visual Studio license. The license terms allow free commercial use for individuals and up to five small business developers. However, businesses (defined as organizations with more than 250 PCs or more than $1 million in annual revenue) must have a paid Visual Studio Professional or Enterprise license or a GitHub Codespaces subscription. To alleviate the problem, Heuer explained in a post about the core C# extension on which the C# Dev Kit depends:
Based on community feedback during the initial announcement last year, we decided to keep all components of this extension (including the LSP host) open source. We are committed to keeping the C# extension and other components like Razor and Roslyn open source and improving the quality and reliability of this extension over time. The base C# extension is licensed under a permissive MIT license. This means that no paid license is required to use the greatly improved LSP extension. Heuer’s message seems to have been well received.
Heuer’s post published on GitHub shows that Microsoft is in an unusual position when it comes to .NET and VS Code. In fact, the Redmond-based company also has a business based on its Visual Studio IDE, and incidents such as the controversy over hot reload debugging support in VS Code show that an internal conflict between a desire to sell Visual Studio and the desire and need to promote .NET as a cross-platform open source ecosystem. There is a Visual Studio for Mac, but it doesn’t compare to the equivalent for Windows.
According to analysts, Microsoft has historically ensured that Visual Studio offers a better experience than VS Code for .NET developers, which is probably why the C# extension was overlooked. However, VS Code is much more popular than Visual Studio IDE because VS Code is free and cross-platform and .NET support for C# adoption is expensive. Some developers (or organizations) choose to do so for reasons of superiority, such as B. Remote development, browser-based IDE and JavaScript support, possibly also for VS Code versus Visual Studio.
Sources: blog post, C# Dev Kit
And you ?
What is your opinion on this topic?
What do you think of the C# Dev Kit Terms of Service?
See also
Microsoft announces the release of the C# SDK for Visual Studio Code
Microsoft announces new roadmap for VSCode C# extension and plans to move LSP Tools fixed source host
Visual Studio Code: a free editor or a developer trap? An analysis by Geoffrey Huntley, software developer and DevOps engineer