There are a lot of editor’s in today’s age, most popular ones being Atom, VIM (and it’s derivatives), Emacs, Sublime Text, Notepad++, the list goes on, but one seems to have “taken the crown” since it’s release, and that happens to be Visual Studio Code, otherwise known as VSCode, but why exactly is it so popular, what benefits does it have over other editors, let’s discuss exactly that.
One major upside VSCode has over other editors is it’s large extension and theme ecosystem, there is editors like Atom that also have a large ecosystem of themes and extensions, but from what I can tell, VSCode’s has grown massively and has probably, from my knowledge grown larger than any other editor’s ecosystem by a fair margin. Don’t get me wrong, things like VIM have many many plugins, but you have the learning curve of having to learn vimscript or lua for neovim, developing for VSCode is quite easy as it uses electron behind-the-hood similar to Atom and a few other editors.
The performance of VSCode is also quite impressive, especially for it being an electron based application. In the past electron applications have a history of being sluggish as well as hogging memory or other resources due to being based upon chromium. A good article I recommend reading on this is this post by softwaretestinghelp, which goes over a key difference in how atom and vscode handle plugin performance, and similar.
With Microsoft creating and releasing to the public the Windows Subsystem for Linux, integration with it is somewhat of a mess, due to it being closer to a VM than a docker container of sorts especially with version 2, not many editors can directly integrate into it, but Visual Studio Code however can, fairly well if I may add. The reason this is, is it uses a custom-made server by microsoft underlying an extension allowing you to the use the editor as if it’s running on the host almost flawlessly, when in reality it’s running on the guest WSL instance.
Now let’s talk about a downside, or rather what some may consider one, by using VSCode you have all their branding and (by default) analytics enabled, not everyone likes these analytics features enabled, so you can disable it in the editor’s settings, but some things are still sent to Microsoft, I recommend reading this part of VSCodium’s documentation, which is a fork of sorts of VSCode that has all Microsoft branding and telemetry disabled, the downside of this fork is you can’t use a lot of extensions as they’re proprietary to Microsoft, and don’t work on forks / unofficial versions.
One thing I personally like about VSCode over other editors is the fact debugging is by default built into the application, as far as I remember other editors, such as Atom need extension(s) in order to have debugging functionality, which is fine, not everyone uses this debugging functionality, but for those of us who do, it’s a nice addition. On top of this GitHub recently released or rather released to private/public beta, codespaces, which uses a hosted/server version of VSCode with some modifications and extensions to make your experience better. Adding onto these, settings sync (while originally done by a third party extension) is an amazing thing I haven’t seen in other editors natively, whenever I need to reinstall my VSCode instance for whatever reason, such as on another computer or laptop, etc, I can sync my settings and have my setup there by clicking ~3 buttons.
While I could go on for hours about why I believe VSCode is the “king of all editors”, I don’t want to end up writing a 12 hour post, so in the end, my opinion is VSCode is probably the best editor I’ve used and will continue to use.