Why I use Atom instead of X

IMHO: This blog post is only my opinion and nothing more. You may agree or disagree with me. That is a matter of taste.

Many people ask me: “Why do you prefer Atom instead of Sublime Text? Why did you switch your primary text editor?” And I have to explain these reasons, again and again, every time. That’s why I’m writing this post.

Flashback

To make things clean, I should say, I had been a big fan of Sublime Text 3. I’d used Sublime Text for 3 years, I had used ST2 and ST3 as well and, to be honest, I couldn’t imagine my workflow without this editor. Sublime is fast, free, accessible and has a big community. Long story short, it’s a good editor.

But there is a better one.

Switching to Atom was painful for me. I’ve tried to switch to Atom since its first release for Linux. Finally, I’ve done this only after 1.0 release.

Now, I’m using only Atom for work and that’s more than enough for me. Also, I have Sublime Text on my laptop, but I use it rarely only for fast fixes, writing blog posts, etc.

Why Atom is better

So, why did I switch to Atom? Just read the list bellow and make your own conclusions:

  • Atom is free. Right, it’s completely free. Atom will never ask you to purchase a license. But if you miss the annoying popup from Sublime Text, just install the plugin.
  • Atom is open-source. That’s means if you want to make an improvements or fix a bug, then just fork atom/atom repo and send a pull request. If your changes are really useful, then they will be accepted. Many packages which were developed by community are included in Atom 1.0 release. Besides, thanks for open source, bugs are fixed faster, so if you’ve found a bug, please open an issue.
  • Atom has a big community. There are a lot of people which use and love Atom, so if you have any problem or question, take a look at Atom Discuss or Atom’s Slack, follow Atom’s twitter.
  • Atom is built using web technologies. I think almost everyone knows that Atom has been built with HTML, JavaScript (CoffeeScript), CSS (LESS), and Node.js integration through Electron. This is good and bad at the same time. It’s good because every web developer can make own package that will solve his/her problem without diving into native development. In other hand we have problems with slow loading (but it’s getting faster and faster after each release).
  • Atom is modular. Everything in Atom is modules: minimap, tabs, tree-view, etc. That’s means if you don’t like something, you can easily disable it, replace by your own module or extend using external modules. It’s up to you. And of course, most of these modules have free software licenses and are community-built and maintained.
  • Atom is hackable. Atom’s developers call it a “hackable text editor for the 21st Century.” It’s really easy to customize and style Atom. You can tweak everything of your UI. Just hack your init.coffee, keymap.cson, snippets.cson and styles.less files. By the way, if you don’t like something, hit Ctrl-Shift+I, inspect this element using developers tools and change it. Watch this video about setting up Atom.
  • Atom has built-in package manager. Yes, you have apm command out of your terminal and you can manage your packages and themes using it: searching, installing, removing, staring, everything. This is very useful for managing your Atom’s configuration in your dotfiles. And this package manager is already built-in, so you don’t have to execute any strange commands additionally.
  • Atom has embedded Git Control. You have ability to see added, changed and removed line in gutter and tree-view out of the box.
  • Atom is integrated with GitHub. Atom has a lot of cool shortcuts for GitHub, thanks for open-on-github built-in package. If you maintain open source project, just try it and feel how awesome it is.
  • Atom has better panes. Yep, absolutely, Sublime Text also has panes, but it can’t split window completely as you want. With Atom you can do anything with your panes and this is really useful.
  • Atom has awesome autocomplete. Atom has clever autocomplete built by community — autocomplete-plus. It has a lot of modules for anything you would like: emojis, paths, any language. Moreover, you can turn your Atom into IDE thanks for Tern.

I think this is enough, but there are more advantages. Those features are only things which are used by me every day.

Downsides of Atom

There is always one pig among all the sheeps. Atom loads slowly. It lacks in performance. There are two major issues: startup time and big files. However, Atom still considerably faster than any IDE.

Atom has a lot of features, but these features might feel a bit slower than Sublime Text or Visual Studio Code though. It has some problems still with performance, but there’s a very active community working on it.

Conclusion

Thank you for reading. I choose Atom for myself. What are you gonna use? It’s completely up to you, but definitely you should try Atom.

If you have any questions, or want to discuss, just reply to this tweet:


Originally published at denysdovhan.com (8 Mar 2016).