Working on Workflow

Erin Greenhalgh
3 min readJul 22, 2017

If you spend time around experienced developers, you’ll likely see them flying through their text editor and shell of choice with almost super-human speed, and they’ll probably have strong opinions about what text editor or shell to use as well as the best ways to navigate them.

Workflow can be overwhelming for new developers, especially those who have switched into the industry from another field via a bootcamp or code school. When I started my journey into software development, I often skipped over learning some keyboard shortcuts in favor of, you know, trying to learn how to program.

At the bottom of this post I offer a few handy commands, but this is not going to be just another list of shortcuts. There are plenty of resources out there and it takes only a few minutes of searching online to find them. Instead I’d like to offer some insight on improving workflow so that it feels like an aid to your work, not a hinderance.

Why Workflow is Important

Though having an efficient workflow will impress your friends, workflow is at the end of the day more about using shortcuts and commands that enable you to effortlessly move through your work than it is about looking cool.

Having a smooth workflow allows you to focus more on the problem at hand rather than the logistics of navigating through it. Learning shortcuts will save you time and brainpower in the long run, even if it feels tedious to learn in the short term.

How to Get Better at Workflow

  1. Identify areas where you are doing the same slow or clunky action again and again, and make a note of it. These are the kind of actions that break you out of thinking about your problem to thinking about how you can navigate your workspace.
  2. Dedicate time to practicing your workflow. In other words, don’t try to solve both the software problem and the workflow problem at once. Once you’ve identified a workflow snag, look up a solution after you’ve made a test pass, made a commit, or just before you’re ready to switch gears or take a break. Deliberately practicing workflow tweaks will ensure they stick and keep you from going down the keyboard shortcut rabbit hole when you should be implementing a new API endpoint.

Note: Experienced developers love to talk about their text editors and shells and will overwhelm you with opinions about the “right” way to do things. Do not let them do this to you. Work on your workflow so that you are clear about what snags you are hitting. Then maybe ask people for advice, but never let them dump shortcuts on you. This is ultimately unhelpful, as your workflow should be customized to you, and not to someone else.

Examples of High-Impact Shortcuts for Me

Goal: Tweak code when refactoring or debugging to see how making a small change affects the result.

  • A non-optimal way: Modify the line of code directly in your editor. This is dangerous because it’s easy to introduce errors into the code if you a) forget to change the line back or b) change it back to the wrong thing.
  • A better way: In Atom and Sublime, command + shift + d will copy the selected code directly below. Now you can comment out your current code, make tweaks to the copy, and easily see what’s changed.

Goal: Reorder existing lines of code.

  • A non-optimal way: Cut the code and paste it where you’d like it. Then go back to the place where those lines used to be and delete the empty lines.
  • A better way: In Atom and Sublime, control + command + arrow up / down will let you move your selected lines wherever you like and doesn’t create an extra space where the line once was. 3 separate actions can be reduced to one.

Goal: Quickly edit lines in the shell.

  • A non-optimal way: Correct a typo or change a command by backspacing one character at a time and then re-typing everything.
  • A better way: In bash, move to the beginning of the line with control + a. Move to the end of the line with control + e. Move forward one word with alt + f and back one word with alt + b. Delete to the end of the word from the cursor with alt + d.
  • Note: in order to use the alt commands, you need to edit the settings in your shell. For Terminal on Mac, so to Preferences->Keyboard and check the “use Option as Meta key” box.

--

--

Erin Greenhalgh

Senior software developer with full stack experience and frontend expertise