Make Your Life Easier With Atom Packages

Pete Hanner
5 min readNov 6, 2019

Programmers are lazy. But, like, the good kind of lazy. When you’re trying to piece together a particularly tricky project, why make life difficult for yourself with nuts and bolts? Most major editors come with a wide array of plugins explicitly intended to move mental effort away from coding basics so you can focus on making your actual product the best it can be.

My favorite editor hands-down is Atom, made by the team from GitHub. Although Flatiron recommends VSCode officially, I’ve really enjoyed Atom due to the customizability that‘s so core to its design philosophy. There are a million ways to set up this editor, and yours will no doubt be unique from mine, but here are a few of the packages I’ve found essential in my coding journey:

Themes: One Dark and Darker One Dark

These are my UI and syntax themes, respectively. If you’re going to be staring at a computer screen all day, why not make it easy on the eyes? These themes are minimalist and dark; the only pops of color are in the code you’re writing, which are vivid and have excellent, language-specific differentiations in color.

Readability: Atom Beautify

This menu goes down further. Like, a lot further. And that goes for every supported language, which is a lot more. Like, a lot more.

There’s a classic coder saying about writing your code as if it will be maintained by a homicidal maniac who knows where you live. Sleep easy with Atom Beautify, an auto-formatter that indents, spaces, line-breaks, and generally cleans up your code according to style guides with a single keyboard shortcut. Settings are customizable per individual language, letting you choose between various formatting plugins as well as options within the Atom editor itself. It even differentiates between language flavors, so you can edit JavaScript, JSON, and JSX with different formats, for example.

More Readability: indent-guide-improved

Atom’s built-in indent guide draws handy lines from the beginning of block levels to their end, making it easier to follow the scope of your code. As useful as that is, this plugin makes it even better, highlighting the lines for your current scope and dimming others. Still not enough for you? Custom stylesheet rules are relatively manageable to implement, allowing you to set your own line weights, colors, and more for every focus level. Combine this with beautify and never be lost by another forgotten parenthesis or bracket ever again.

Begone, Window Switching: platformio-ide-terminal

If you’re debugging, the terminal is your worst enemy and your best friend. It’s also something you’ll be visiting roughly every 1.3 seconds, so why bother swiping between workspaces or Cmd-Tab-ing through every window you have open? This plugin lets you open up a terminal right in Atom. If you have a separate Terminal window open elsewhere, it even saves your command history across instances for your use.

Seconds Add Up: autoclose-html

All these tags were closed automatically. You can’t tell in a static image, but just take my word for it. Or if you don’t believe me, just download the plugin and check for yourself.

If you’re doing web development, this is a must. Every time you type a >, or a/ within angle brackets, this plugin closes the tag for you. This is one that seems small, but once you never have to remember to write a </div> or any other closing tag again, you’ll never want to go back.

git uh-oh --where-was-i: Atom svn

Given that it’s maintained by the GitHub team, Atom naturally has great git functionality. A number of plugins have enhanced this even further, but my favorite is svn. Files with changes since your last commit are highlighted in yellow in the tree view, with the exact lines marked by yellow bars in the gutter. The gutter also shows green bars for newly added lines and red arrows for deletions. New files are also highlighted green in tree view. Another plugin that sounds so simple, yet seems almost impossible to work without once you’ve gotten used to it.

The World Is Your Oyster

These are only a few of my favorite Atom packages — the list goes on in terms of language support, snippet collections, formatting helpers, color pickers, and tweaky little things that may have honestly distracted me more towards optimizing my environment set-up than actually coding.

Getting sucked into plugins is definitely a danger, and you definitely don’t want to go down that rabbit hole just for the sake of customizing. But used thoughtfully and purposefully, packages can make the nuts and bolts of coding soooo more easier and seamless. By taking mental energy away from boring, repetitive, and time-consuming tasks, you can better focus your efforts on creating efficient, beautiful, optimized code.

Try out some of these plugins to see if they help your coding journey, and next time you find yourself bogged down in mindless setup or boilerplate, take a look around the Atom packages collection and see if there’s already a tool out there to make your life easier.

After all, you’re programmer — be lazy! But like, the good lazy.

--

--

Pete Hanner

Former paralegal gladly opting for programming instead of law school. Engaged in a years-long, steady migration northward.