What Makes VSCode so Popular?
Visual Studio Code is bae

Visual Studio Code (VSCode) is the most popular development environment, period. If you need proof, here’s the Stack Overflow Survey from 2019, although it would’ve gotten even more popular by today. Like the objective majority, I love VSCode.
Before you call me a ‘soydev’, YES, I have gotten my toes wet using other text editors/IDEs, such as Vim (I use Vim bindings everywhere) and the Jetbrains suite. Yet, I always come back to finish up my code projects on VSCode. There’s a reason for why anything happens, and this is no exception.
It really boils down to a few major factors that propell VSCode above its alternatives.
Stick around as I explain this phenomenon, that is Visual Studio Code!
Jack of all Trades, Master of None
Realize how I had referred VSCode earlier in this article as a “development environment,” not as an IDE nor text editor. This is deliberate: from how you see it, VSCode is both or neither any of them. Despite the irony, this makes it seem more of a compelling choice than others.
Take speed and resource usage for example. Text editors and IDEs are polar opposites in this aspect. Stuff like Vim and Nano takes less than a second to open in the terminal (granted you’re using them without any plugins), while I can solve a Rubik’s cube before PyCharm finally opens and finishes indexing project files. Well, what about “the most popular development environment?” Right smack at the middle.
To demonstrate my point, I loaded up a python discord bot I scripted a few months ago on Vim, PyCharm, and VSCode, and non-scientifically tested resource usage and launch speed. Vim was the first to go, opening the file instantly and sipping an unnoticeable portion of my 8GB RAM.

PyCharm had me sitting for some long seconds, then even longer as it indexed my python environment. Not only that, it continued being a resource hog after a full minute since opening the project.

Finally, VSCode took a second — give or take — to open with all 15 of my extensions enabled and took a fraction of my resources after the initial spike. Is it noticeable? Yes, but at least not as insane as PyCharm.

Some would say VSCode is a bloated Electron app that eats more memory than needed, in which I would reply that they have their hopes way too high for something built using what-is-quite-literally Chrome. Beyond this performance example, VSCode commonly becomes the sweet spot between text editors and IDEs, truly making it the embodiment of the phrase “Jack of all trades, master of none.”
For the majority of us programmers, we aren’t necessarily looking for a snappy yet barebones text editor or a “super-smart” yet sluggish IDE.
We want something that “just works” everywhere, and VSCode is exactly that.
VSCode is yours. No, really.
We’ve just established that Visual Studio Code can do pretty much everything reasonably well, but even our definitions of “everything” varies. A web developer’s “everything” differs from a data scientist’s “everything,” for instance. Good thing VSCode literally has a catalog of over 24,000 different extensions to extend its own capabilities.
VSCode already supports a plethora of different programming syntaxes out of the box, but you still can install a language extension to expand support for useful features, such as IntelliSense auto-complete and advanced linting. The sky’s the limit, from Python and C++ to COBOL and Lisp. All you have to do is click on an “Install” button right inside VSCode.

Wait, there’s more! Extensions aren’t only language-specific but can also provide conveniences that are useful for a broader spectrum of us developers. For me, I use the handy SSH plugin whenever I need to edit code stored on a server, “Code Runner” when I’m too lazy to execute my code in the shell, and of course, VSCodeVim for Vim emulation. Heck, There’s even VSCode Tinder for anyone who’s interested!
By the way, if you are in the search for some new, unique extensions for VSCode, I’ve written an article just for you!
Finally, there are VSCode themes. With more than 4000 themes to choose from, you’re bound to find a color scheme that fits your eyes. Some extensions also change your icon theme (seen at file tabs and the Explorer side panel), which is a nice touch. A theme I personally love to use is Andromeda, probably the sexiest implementation of a dark theme for VSCode with beautiful purple and teal highlights.

So, rest assured that VSCode has your back, no matter how wacky your development stack may be.
Extensions Done Right
I’ve already covered two reasons why VSCode is as successful as it is today: it hits the sweet spot between a text editor and IDE, and it has all the extensions you’ll ever need. Yet, there are multiple other options that fit both criteria, namely Atom and Sublime Text. (I can imagine some VSCode haters out there reading through past sections and simultaneously yelling at their screen “Atom and Sublime!”; don’t worry, I hear you all spiritually.)
Though they all have their individual use cases and appeal, I’m grouping all these for comparison because I find both of them to be the most similar to VSCode from the options available. Atom and Sublime do offer some cool tricks up their sleeve, but would I consider them superior to VSCode? No.
The fact is, nobody does extensions like VSCode.
Sublime was more of a straightforward text editor, to begin with. In that aspect, it does a very solid job and would be a great tool for me. Though even with Sublime’s Package Control, I personally never felt like it could ever beat VSCode’s robust IntelliSense and extension integration, which remain must-haves for me. For ones that look for a simpler and snappier VSCode, consider Sublime.
Atom, on the other hand, seems like a direct competitor to VSCode; both are popular open-source projects built with Electron with a flourished extension catalog (called packages for Atom). Deemed as the “hackable editor of the 21st century,” Atom boasts very extensive documentation all about the editor’s inner workings and its API, which makes it easy for developers to develop Atom packages (though VSCode has equally well-written docs). Unlike VSCode, Atom also has built-in GitHub integration, allowing you to view things like pull requests of the current repo in the editor itself.

Then, what’s the difference between Atom and VSCode?
The extensions/packages themselves. Both achieve almost the same features, but the majority of Atom’s features are implemented via separate packages, while VSCode’s are already built-in. Despite this being a neat design choice, it ironically makes Atom more sluggish than its opponent. VSCode also optimizes its own extensions much more than Atom, leading to a much better experience even with 15–20 extensions/packages.
Elaborating on that fact, VSCode implements the Extension Host, a background process that actively prevents extensions from impacting the performance of the actual development environment. Additionally, VSCode empowers the user by providing reliable and easy extension search queries and management. One thing that annoyed me about Atom was its inferior search feature and the lack of a rating system; as trivial as these may sound, it made finding the right extensions a huger pain than it should’ve been.
And if you take into account the seemingly larger user community, VSCode’s extensibility and reliability become unmatched. This is part of the reason why VSCode — not Atom, nor any other — is today’s most popular development environment.
The Solution to the Enigma
Ultimately, with a strong ecosystem for extensions, Visual Studio Code covers all bases sufficiently well for any type of developer out there.
That’s basically a one-sentence culmination of everything I’ve discussed here (exclusively for those that habitually skip to the end of every article). I’m sure there are some details or comparisons I might’ve missed here. Feel free to express them and/or your lingering skepticism in the comments below! For now, I’ll go back to finishing my Vue web app on VSCode!