Why not Atom?


Hello there, fellow reader.

Atom is currently “default” editor when it comes to developing for web or any JS related technology. Node, Electron, React Native, you name it. Facebook officially creates platform to build web and mobile apps as Atom plugin - Nuclide.

Why I don’t like Atom

It’s so slow and unstable I can’t stand it. Don’t get me wrong, I love its flexibility and ability to easily change appearance and behavior. But I can’t work with an editor that tends to crash with little to no message or its tendency to give coffee break if I accidentally click on some minimized CSS/JS on my file tree.

What cool kids editor I use

My editor of choice is Visual Studio Code. I use it to code everything from simple scripts, configs to all my applications. I even use it to write this post. It’s so reliable and fast compared to Atom you won’t look back. And fact that it uses the same framework (Electron - created… for Atom) gives Atom the final blow.

I’m sure you’ll try to defend Atom by saying it has more useful plugins. It’s only partially true. While a few months back Visual Studio Code would have only few useful ones now it gives you everything you’d ever need.

Surely it doesn’t have power mode but I’ll show you some cool things it can do.

How real programmers code

What Visual Studio Code can do

Great git support out of the box

You can easily view what branch you are on, push, pull, rebase and commit. Built-in list of edited files gives the ability to stage, clean or preview changes to file you’ve just done before commiting them upstream. Very useful feature, prevents you from making stupid mistakes.

Git code diff

Built-in debugger

There’s a debugger that has ready to use configuration for Node, Python, Chrome Dev Tools, React Native. It’s pretty nice to be able to use a single tool for debugging across different platforms.

Minimap

Loved by everyone I’ve met - minimap. It’s a well known Sublime feature that found it way to all sort of different editors. In Visual Studio Code it’s build in from version 1.10. And it allows rendering characters or just colorful bars representing lines if you’d like to. Pretty cool.

Code minimap

Support for various languages and linters

I have yet to find language that is not supported by some plugin in Visual Studio Code. So far everything I wanted to write in had some support. Usually it worked better than it used to in Atom. Plugins never caused problems for me and never displayed a big red crash message in the corner.

Configuration

While Atom configuration is somewhat easier with tabs and windows it gives you much fewer options. Visual Studio Code has a JSON based config with the search bar and quick change for any option. The right side is your settings, the left side is editor defaults. It seems to be harder to find anything but after playing with it around for couple of minutes you won’t have any problems.

Visual Studio Code config