Fotolia
Microsoft VS Code: Winning developer mindshare
With Microsoft Visual Code, developers receive a free, open source development tool that can be used by any developer, in any language and on any device.
Microsoft's Visual Studio Code has been a decade in the making and is now one of the most popular tools used by developers across Windows, Linux and iOS.
Microsoft VS Code's popularity lies in the fact it can be used by any developer, in almost any language, on any device. Last year, VS Code gained five million new users because of Microsoft's increased focus on collaboration, remote development, and making Visual Studio Code the home for different kinds of developer personas. The tool now has 14 million monthly active users, Microsoft said.
"People think VS Code was an overnight success, but it was 10 years in the making," said Erich Gamma, technical fellow at Microsoft and creator of VS Code, at the VS Code Day virtual event on January 27.
Gamma joined Microsoft because he envisioned a new standard for browser-based developer tooling that would be as successful as the IDE had been for the desktop, he said.
"It's got a nice UX, it's free, it's nimble -- and thus performant, it's multi-platform, and it's straightforward to extend," said Jeffrey Hammond, an analyst at Forrester. "Thus, it has a lot of integrations which improve developer productivity."
Microsoft VS Code is relevant for different developer personas including front-end, full-stack, data engineers, and nontraditional developers such as site reliability engineers, engineers and system administrators. Last October, Microsoft partnered with Adobe to release the Adobe XD extension for Visual Studio Code, which enables designers to create design packages for developers across their organization to use when building applications.
The price is right
Ted Neward, director of technology culture for Detroit-based Quicken Loans, described the reasons for VS Code's success thusly. "In a nutshell, I think it's the EMACS of a new generation: open, extensible, backed by a major vendor without being exclusionary, cross-platform on all the platforms that matter, and relatively fast," Neward said. "And it's free. It's hit the center of a magic circle that way."
Other developers agreed with Neward's take.
Ted NewardDirector of technology culture, Quicken Loans
"It's free, developers are creating new plugins regularly so you can get additional functionality very easily, and it's simple," said Cory McArthur, a user experience engineer at Sworkit in Bethesda, Md.
VS Code alternatives
In addition to JetBrains' WebStorm, other alternative editors to Microsoft VS Code include Vim, Atom, Sublime Text, Emacs and Nova.
Jonathan Klaassen, engineering manager for San Francisco-based Kite, said he first started using VS Code for its tight integration with TypeScript.
"I found that it worked right out of the box without additional setup and was intuitive for me to use," Klaassen said. "I used it side-by-side with Atom for some time and have found it overall to be a better experience. In particular, I have found that Atom frequently shows plugin errors and warnings, which I don't see in VS Code. File that under 'it just works.'"
Meanwhile, VS Code supports almost every major programming language. There are also extensions for Python, COBOL and many other languages in the VS Code Marketplace. However, VS Code is particularly popular with JavaScript developers.
The recent State of JS 2020 survey shows that the editor is used by 86% of JavaScript developers. The tool is also popular with Python, Go and Rust developers, among others. To satisfy developers on different hardware platforms, Microsoft has added support for Windows on ARM for the Surface Pro X, and Linux on ARM for Raspberry Pi. The next VS Code release will feature native support for the new Mac laptops that run on the Apple Silicon M1 chip.
Open source cred
In addition, VS Code continues to thrive as an open-source project.
"Microsoft offering it as free and open source in 2015 changed the perception of non-Microsoft developers," said Krishnan Subramanian, an analyst at Rishidot Research in Redmond, Washington. "The fact that they embraced open source allowed developers to look at Microsoft in a more positive way and this karma helped gain developer adoption."
The VS Code team pivoted to be more open by deciding to make VS Code a cross between an IDE and a code editor.
"VS Code seems to strike the balance really well, where it has a lot of features, but is still pleasant to use," Klaassen said. "I've generally preferred lightweight text editors, and I tend not to use IDE features like embedded terminals, test runners or Git integration."
Open, extensible, supports remote work
Moreover, VS Code is developed in the open and developers can keep up with its progress on GitHub. Microsoft's acquisition of GitHub and eventual integration between GitHub and Azure DevOps made it easy for developers.
"The extensibility options allowed developers to customize VS Code for their needs," Subramanian said. "For example, I deploy code from VS Code to Google Kubernetes Engine using Cloud Code extension. The extensibility factor is very appealing to many developers."
Microsoft also has reduced the time it takes for developers to ramp up onto a project or tap into their preferred environment through new remote development capabilities in VS Code, and the GitHub Codespaces product. The Live Share capability of VS Code also supports remote work.
"VS Code's live sharing has become a valuable tool as we are a fully remote team," said Max Lynch, CEO of Ionic in Madison, Wis. "Having developers be able to work alongside each other in the same workspace has proven to be more productive than just simple screen sharing. VS Code is the primary text editor for our engineering work at Ionic. It's been instrumental as we've moved entirely to TypeScript for all JavaScript projects, given its powerful TypeScript tooling. Several team members have also built interesting new extensions for it."
From the UI to the editing experience, almost every part of Microsoft VS Code can be customized and enhanced through the Extension API. Many core features of VS Code are built as extensions and use the same Extension API. There are more than 28,000 extensions built by nearly 20,000 authors. Some extension examples include: GitLens, Prettier, Music Time, Jupyter Notebooks, Microsoft Edge tools for VS Code and Live Share.