by Mike Tromba

Will VS Code Replace Visual Studio? - Mostly

This post explains why VS Code will mostly replace Visual Studio.

When I first learned about VS Code, I couldn't help but wonder if it was going to replace Visual Studio. How could Microsoft invest an equal amount of time into both tools?

It's clear that VS Code now has a significant market-share over Visual Studio. In a recent study done by Stack Overflow, 50.7% of respondents reported having used VS Code, whereas only 31.5% reported using Visual Studio.

Most popular development environments

Source: Stack Overflow 2019 Developer Insights Survey

I expect VS Code to continuing gaining market share over Visual Studio, into 2021 and beyond.

If this trend continues, is it going to completely kill Visual Studio?

I have concluded that VS Code will mostly replace Visual Studio. VS Code is better for most things, but Visual Studio has certain features and use-cases that VS Code can't easily replicate.

Let's go straight to the source. Here's how Microsoft describes each:

VS Code

Tagline: "Code editing, redefined."

Visual Studio Code is a lightweight but powerful source code editor which runs on your desktop and is available for Windows, macOS and Linux. It comes with built-in support for JavaScript, TypeScript and Node.js and has a rich ecosystem of extensions for other languages (such as C++, C#, Java, Python, PHP, Go) and runtimes (such as .NET and Unity).

Source: VS Code Docs

Visual Studio

Tagline: "Code faster. Work smarter. Create the future with the best-in-class IDE."

The Visual Studio integrated development environment is a creative launching pad that you can use to edit, debug, and build code, and then publish an app. An integrated development environment (IDE) is a feature-rich program that can be used for many aspects of software development. Over and above the standard editor and debugger that most IDEs provide, Visual Studio includes compilers, code completion tools, graphical designers, and many more features to ease the software development process.

Source: Visual Studio Docs

Put simply:

  • VS Code is designed to be a lightweight code editor, centered around speed, flexibility, and extensibility. The built-in tooling is very good for web developers.
  • Visual Studio is a complete IDE (Integrated Development Environment) which aims to be a comprehensive, full-featured solution for building software.

For MOST use-cases, VS Code is a better choice. It's:

1. Cross-platform

VS Code runs wherever you need it. Windows, MacOS, and Linux. It's built with web technologies using the Electron framework. The application files are lean, and auto-updates are relatively seamless.

2. Fast (much faster than Visual Studio)

VS Code boots up incredibly fast compared to Visual Studio. I used to start up Visual Studio and go grab a cup of coffee while it launched. I would leave my project open all day to avoid the awful load time. Now, with VS Code, I open and close projects all day long without worrying about speed. It's a non-issue with VS Code.

3. Highly flexible (there's thousands of extensions you can install)

You can make VS Code do pretty much anything you want. Although it is designed to be a "code editor" and not an IDE, you can almost exactly replicate the features of an IDE by installing VS Code extensions. Extensions are great because they are community-made and maintained. This means there's a massive marketplace of extensions for almost every use-case you can think of.

4. Simpler

VS Code's simplicity means that the development experience is way more streamlined. You don't have to worry about tons of complex built-in functionality that you will never use. If you want to add features to VS Code, that is at your discretion, in the form of extensions.

5. More Intuitive

From the moment you first launch VS Code, the experience is smooth. If you have any past development experience, you will understand the tool instantly. Visual Studio takes a bit more getting used-to.

6. Free and open-source (Visual Studio full-version has hefty license fees)

Unlike Visual Studio (full-version), VS Code is completely free and open-source. There are many contributors working day and night to make VS Code as great as it can be. If you're an individual developer or work on a smaller startup team, the cost savings can be significant. Visual Studio costs $45 per month or $1,199 for the first year, and $799 every year thereafter for the perpetual license. The enterprise version bumps those numbers up to $250 per month and $5,999/$2,569 for the perpetual license.

7. Perfect for Web Development

VS Code has out-of-the-box support for Node.js development with JavaScript and TypeScript as well as built-in tooling for JSX/React, HTML, CSS, SCSS, Less, and JSON. It's no wonder that web developers have adopted VS Code as their primary code editor.

Why would you use Visual Studio over VS Code?

Well, there are a few reasons.

To most developers and teams, these factors are insignificant, but for the minority these are important and will tip the scale in Visual Studio's favor.

1. Large, out-of-the-box feature set

Visual Studio has much more functionality than VS Code out-of-the-box. In certain cases, it may perfectly fit your project/workflow requirements without any additional configuration / extensions. In other words, whenever you need an extension in VS Code, Visual Studio probably already has the feature baked-in. The comprehensive feature set may outweigh the poor load times.

This may be attractive for companies who want to standardize the tooling and workflows for all of their developers to avoid confusion.

2. Team collaboration features

Team collaboration on development and debugging is treated as a first-class-citizen in Visual Studio. If your team's workflow is heavily integrated with the collaboration features of Visual Studio, you're more than likely going to be using it.

3. Analysis, Profiling, Debugging

For things like heavy code analysis, performance profiling, and snapshot debugging, Visual Studio is also very well-suited.

4. Game Development

Visual Studio is also extremely common in the game development industry. If you're a game developer who wants to assimilate with experienced game development teams, Visual Studio is probably the right choice.

There's room for both to co-exist.

While you can achieve most of your software development goals more effectively using VS Code, Visual Studio still has use-cases that it excels at out-of-the-box... without all of the extensions that VS Code would require.

VS Code will (and has) mostly replaced Visual Studio, but Visual Studio will live on and continue to provide for teams working with complex software development requirements for some time.

by Mike Tromba