Header image: Atom, code editor

The first in an occasional series looking at the tools we use in our day-to-day work

A lot has been said, written, and ranted, about programming editors and IDEs over the years. Allow us to add to the noise.

Mr. Poole is kicking off with a brief post about his code editor of choice, Atom

If you haven’t yet ventured into the world of this “hackable text editor for the 21st century” (their words), then it might be worth a go. Atom is an extremely usable, responsive, and distraction-free editor for code, and I’ve used it to the exclusion of all others for my text editing, JavaScript / web coding, bash scripting, and even the odd bit of Java (IntelliJ IDEA is still my IDE of choice for more heavyweight Java programming and testing).

Why Atom? Well yes it’s open-source, free of cost, and has a massive developer-friendly organisation behind it. That’s a cracking start, but the fact that Atom is built on top of tried-n-tested web technology (Electron) is the real clincher. If you don’t like something in the editor, all it takes is Ctrl-Shift-i (Windows) or Cmd-Opt-i (Mac) and you will have a familiar inspection pane at your disposal, a means for tweaking whatever it is that gets on your pip.

Screenshot: Atom running on macOS

Atom ships with a number of key packages, not least the very wonderful Autocomplete-plus, and there are hundreds more to choose from. Minimap is a must for navigating larger files, and the various Linter packages are indispensable too. Here are a few others I recommend:

  • Semantic Colo(ur) for sensible syntax colouring
  • atom-ternjs: “JavaScript code intelligence” which sits on top of the core Autocomplete-plus package
  • linter-eslint fronts up ESLint for Atom and Linter.
  • Todo-show Shows up all TODO, FIXME and related tasks in a project or whole workspace.

We don’t all agree about programming editors at LDC Via Towers: what are your favourites?