The main reason why I stopped using Atom.io and switched to Visual Studio Code this late into the game is because Atom.io is ridiculously slow.

In the past, I started out using Adobe Dreamweaver back in 2009 as my primary web development tool. Several years later, I moved onto Brackets for about a year, then to Atom.io primarily because I loved the UI layout of Atom more over Brackets. Ever since then, I've been using Atom.io for about 4-5 years as my primary editor for my web development projects. It is now December 10, 2018, I've decided to stop using Atom.io and switched to Visual Studio Code because Atom is slow.

An Honest Confession of My Editor Usage

I have a confession to make, and that is I don't utilize the full capabilities of an editor. Most of the times, I just use it for the sake of its backshifting features, the visual aesthetics (e.g. color code), spacings, and syntax highlights. Other than that, that's basically it!

So at this point, you're probably wondering, if that's the case, I should've been fine with something much more lightweight and much more faster, such as Notepad++. It does what I need it to do, and it gets the job done.

Yes, it does, but I hate the UI layout for Notepad++, and it doesn't feel as elegantly made when compared to Atom.io and Visual Studio Code.

So, because of this, when it comes to me changing editors, other factors comes into play, and that factor is the performance of the editor.

What I Liked About Atom.io?

I liked Atom.io for its versatility and capabilities of expanding to more than what it can do right out of the box thanks to its vast community and plethora of plugins and addons.

It was a 100% ad-free free editor alternative that is similar to Sublime Text Editor. By the way, Sublime Editor does have a free version, but with some gotchas, such as the annoying popup that tells me to buy their product.

What I Disliked About Atom.io?

The one thing I disliked about Atom.io so far after using it for 4-5 years is its performance and potentially stability.

Sometimes it would crash for some unknown reasons due to it freezing up. Other times, it would mostly just be super slow to startup when I do "Open with Atom.io" for an existing project of mine (usually something built with Node.js).

Why I Chose Visual Studio Code As My Next Editor?

Popularity

Visual Studio Code is still the new kid on the block in my opinion. It was only released not too long ago when you compare it to Atom.io and other existing solutions out there. Plus, because it's so popular, chances are, it's probably going to be something that is used in a professional work environment, so why not learn it now so I can be productive and efficient with my tools when I need to use it, right?

UI Design

Again, I'm very picky when it comes to the UI design. I've seen videos on YouTube where people used Visual Studio Code. Some even customized it with certain theme packages where it just looks aesthetically pleasing.

Yes, Atom.io can do the same thing, but remember, I said I stopped using Atom.io because of a performance reason, not because of a UI design layout reason.

Performance

Prior to the installation and switch to Visual Studio Code, I made sure to do my homework first, and I did some research on what other people thought of Visual Studio Code as well as why they made the switch.

Some reviews claimed that VS Code is faster when it comes to performance. I've also never seen any review that mentioned that Atom.io was faster than Visual Studio Code. That alone, carried a great weight to my decision.

File Footprint

The program itself was more or less similar to Atom.io, so I'm not losing much nor am I saving much in terms of hard drive space on that aspect. So, why not? Right?

At the time of checking via the Windows Control Panel, Visual Studio Code v1.29.1 is 185 Mb, whereas Atom.io v1.31.0 is 143 Mb (with 2-3 plugins/add-ons - specifically Markdown editor/preview and a code beautifier plugin).

Familiarity with Visual Studio IDE

Finally, the last reason that made me jump ship was my prior experience and familiarity with the Visual Studio IDE (for C++, C#, etc.)

Yes, I do know that you can't really compare the two, since Visual Studio is a IDE, whereas Visual Studio Code is a editor. However, they're both made by the same company. With that in mind, Visual Studio Code has some design decisions influenced by the Visual Studio IDE. This not only helps reduce the amount of time spent figuring out where everything is at, but it also helps me be more productive at the same time.

Atom.io vs Visual Studio Code Project Load Speed Comparison

I did a simple test to see which one was faster in performance. My main concern is how long it takes for it to open a project, so I tested it based on that factor.

How I Tested The Load Speed?

  1. Open the folder with Windows Explorer and navigate to my project's root directory. In this case, I used a Vuepress project which I played around a week ago.
  2. Next, I right click inside that folder, and "Open with " while simultaneously starting the stop watch on my Android phone.
  3. Once the file names are displayed in the project folder tree of the IDE, I stopped the timer.
  4. I repeated the entire process over with the next editor while making sure to close the previous one.
  5. I would then repeat this 2 more times to see how fast it would be after Windows is familiar with the fact that I'm re-opening something I've opened before.

Here are my findings:

Name 1st Time Load 1st Familiar 2nd Familiar
Atom.io (v1.31.0 x64) 39.55s 5.60s 5.74s
VS Code (v1.29.1 x64) 20.04s 3.43s 4.04s

Note: 1st Time Load means it's the 1st time the program is opened during the operating system session. The following Nth familiar is performed after I closed the program and re-opened later on.

So, as you can see, for me, VS Code on its 1st time session load performed 19s faster than Atom.io did. Then, during the next 2 opens, the time difference was significantly reduced to just about a second difference.

Yes, it might not be a lot for later sessions, but what if I wanted to code just for 1 session during the 1st load? What if I had to make a urgent change? In that case, 19s is too much time wasted spent on waiting for the program to start.

Keep in mind that I used a very barebones Vuepress project for this timing experiment. If I opened one of my regular projects, which are mostly twice the size of my Vuepress project, I would imagine the time to be significantly greater than what you see now.

Atom.io vs Visual Studio Code Memory Consumption Comparison

For this specific test, I decided to keep it simple since I didn't care about it much. Plus, I have 8 GB of RAM, so it was low on the priority list.

I performed the test for this comparison by opening one program, then waited until it was stable running on idle, and recorded the time. Then I would close the program and repeat the process. I also made sure that the same file was opened and no additional tabs were opened at the same time.

Here are my results:

atomio-vs-visual-studio-code-idle-memory-usage

As you can see, Visual Studio Code wins this round.

Will I Ever Switch Back to Atom.io?

If Atom.io fixes their performance issues to the point where it can rival that of Visual Studio Code, AND be more stable, there is a high chance that I would consider switching back to Atom.io.

Should You Switch to Visual Studio Code?

Well, it depends on you. Chances are, you probably have some kind of custom work environment setup on your existing editor. Maybe it'll be annoying having to set up something similar on VS Code. If that's the case, you probably should just stick with what you have now.

However, you won't really know unless you try it and see for yourself. You can download Visual Studio Code for free at this link: https://code.visualstudio.com/