Atom vs Visual Studio Code vs Vim

With so many programming text editors out there today, the seemingly simple task of choosing one suddenly becomes daunting and overwhelming.

While for most developer they will google for “what is the best text editors for developer” and such. There is no best, only which you like to use and I am here to share with you the three text editor that I recently used and my thoughts about them.

Disclaimer: As with any comparison, some of these views are subjective and are mostly based on my personal preferences.

Atom

  • Url: https://atom.io/
  • Cost: Free (MIT Licence)
  • Developer: GitHub
  • Platforms: OSX, Windows, Linux

Atom is relatively new to the world of text editors and usually have tons of packages to install and customize. All of the packages can be found in Github At the time of writing this, there are over 11,000 packages and themes!

Editing and Workflow

In general, everything in Atom is smooth. The biggest problem is to know what to download to fit your personality.

Another nice feature of Atom that I’ve found is the drag/drop file/folder support in the tree view. So that is a nice treat.

Customization

Ability to customize an editor to match your development flow and style is essential. Atom has a great doc page on how to even override the styles (Atom’s written in pure HTML/CSS on top of Chromium) — http://flight-manual.atom.io/using-atom/sections/basic-customization/

Overall, I love how configurable Atom is the ability to override settings on a per-file type basis is great!

Performance

Since is Atom is new at times it can feel slow compared to the other two. Sometime there will be a lag on opening files or switching between tabs and with the most developer it can be painful if it constantly does just that. Github integration is great because it is made from the Github team after all! But the funny thing is that Visual Studio Code is a bit fast getting thing in Github because Microsoft brought Github outright and made it their device is slightly better.

Verdict

Atom is a great tool, especially for those who want to customize their editor easily, and beyond what others provide. As a web developer, the freedom to tweak, add, and extend your editor gives an incredible feeling of power. I also love its docs. The Atom Flight Manual provides a great starting point for new users.

The greatest downside for me would still be the performance issues, but for a free editor, Atom shines brightly!

Visual Studio Code

Visual Studio Code (VSCode) is a relative newcomer to the world of text editors. It was released in April 2015, but it has already been picking up a lot of traction. Microsoft has done a great job of creating a powerful and flexible cross-platform editor that’s piquing a lot of interest from developers. They also brought Github and their integration with GitHub is better then what GitHub Atom is.

As with our other editors, VSCode has a nice plugin (extensions) ecosystem. The extension management is built-in, and there are already several thousand available! As with Atom, some come installed by default.

You will need to spend some time picking out plugins that are best for your workflow.

Editing and Workflow

Although VSCode is built in a similar fashion to Atom, using Electron, Node, and HTML/CSS, it is actually much faster without any real lags.

Working with this for a while I am starting to like this much more than Atom. It has great debugging feature as well as slightly better usability then Atom.

As an added bonus, the Git integration is very convenient. Not as powerful as what I get using SourceTree, but for common operations like commits and diffs, it proved to be perfect and sped up my development time.

Customization

Like the previous two editors, the expected customization features are there — all the necessary wrapping, indenting, theming, language tweaks, etc.

Performance

VSCode is built on Node.js, Electron, HTML, and CSS, it feels fast. There is no lag when opening tabs and have a lot of seamless transition.

Verdict

Overall with VSCode, I am actually considering switching from Atom to this. It has great functionality and Microsoft pour a lot of time to make this better and free.

Vim

  • Url: http://www.vim.org/
  • Cost: Free GPL compatible license
  • Developer: Bram Moolenaar
  • Platforms: OSX, Windows, Linux

One of the OG text editor tools that a developer used another one is Vi. Ability to edit or view a file on a remote server through a terminal is a hugely productive and important task. I’ve seen many developers jump through all sorts of hoops using SFTP, or curl, and re-uploading files.

Once you have mastered the environment the amount of power you have is immeasurable. But only if you master the environment else wise it is better to stick with the thing you know.

With Vim there is a package or theme with everything but to install it needs some knowledge and inner working to get bad boy working.

Editing and Workflow

For those who do not really know what is Vim, it is just a command line text editor. There is no clicking or mouse moving. Everything is essentially done with the only keyboard. That includes opening, closing, editing, saving is all done by keyboard shortcut.

Most college who have a degree in computer science was forced to work with Vi or Vim to create the entire project. To become a Vim master it takes a real commitment to getting it right.

Basically the more shortcut you know that faster and more efficient you become but if do not know that many shortcuts then a lot of work could become frustrating.

Customization

Vim is amazingly customizable. You will find everything from preconfigured files and extra shortcut and lots of other stuff. If it is not available well then I will be very surprised.

Performance

The only blocker is you... It depends if you can go fast and type fast. The faster you go the better the performance.

Verdict

Vim is raw power. It can be incredibly fast, efficient, and powerful environment if you have the patience to learn the commands. http://vim-adventures.com/ is an online game that helps you with that.

Final thoughts

What I am most use to is Atom but with the inclusion of Visual Studio Code, I am convinced on switching to that but those are my options. I recommend that you try each one for a week to see if you like the code editor.

Thanks for having me and have a nice day!~

Felix Chan signing off.