Email flow for GTD

8 min read

The Emacs org-mode system from last post is supported by a fairly simple, robust email flow designed to GTD and keep me at Inbox Zero and not overwhelmed with mail or have things fall through the cracks. This is how it runs.

For about ten years now, I've been using this system which I've modified slightly to work with what has become the default mail client for most companies, Gmail, and recently to my experiments with moving to org-mode as an organzier. It is pretty extensible to any offline client you'll use (or Taskpaper as an organizer) as long as it integrates with Gmail. It's a combination of David Allen's Getting Things Done system and a riff on Gina Trapani's Trusted Trio approach.

The system has four basic goals:

  1. Extract Todo items out of your email and into your GTD app
  2. Keep you Inbox Zero and from being overwhelmed by incoming
  3. Keep you action oriented and moving forward
  4. Keep items from falling off your plate

The great thing about this flow is that it requires ridiculously little on your part, other than the simple creation of one folder (Wait) and the following of some simple processing rules. The rest is simply using Gmail's existing features (and if you use the web-based keyboard shortcuts, you can get ridiculously fast at processing your mail.). All your other labels/folders you can get rid of. Basically, most modern email clients you should depend on search for rather than arbitrary labelling or folders and the only things you need besides Hold are Gmail's Star feature or All Mail.

Step 1 - Process Your Inbox to triage

Hmmm... look at that overflowing Inbox. Don't let it intimidate you. Let's start processing your mail.

Skim each mail. Use these rules:

|----------|------------------------------------------------------------------------------------------| | Mnemonic | Action | |----------|------------------------------------------------------------------------------------------| | Do | Can deal with it in under 2 min? Do it and Archive. (If it needs followup, see below.) | |----------|------------------------------------------------------------------------------------------| | Delete | Delete what you can or Archive if needed for future reference. | |----------|------------------------------------------------------------------------------------------| | Defer | Star it and Archive | |----------|------------------------------------------------------------------------------------------|

You've now got an empty Inbox. Welcome to Inbox Zero.

Note: That when you have Do items that you have to followup or chase someone on (I have a lot of these) you need ot modify the Do portion slightly and follow these steps:

  1. Do it.
  2. Tag/Label the mail Wait
  3. Make a WAIT item in your org-mode Inbox (or daily) with the DUE: date for chaser and the mail link and any relevant tags (week, person etc).
  4. Archive it (it will then be in your Wait Label folder in Gmail)

Yes, it sounds a bit more complex, but it gets to be natural once you get into this flow. Also, this is the way you keep things from falling off your plate when they are waiting on someone else.

Step 2 - Process your Starred Action Items

Now we get to the meat of the system. The key thing here is to get things out of your email and into your GTD app. I usually link the email directly into the ortg-mode task so that if I need to followup on the thing or otherwise refer to the source at some time from the Todo, it's there. The idea is to empty your Starred items and get it empty as well or into the Wait folder.

|----------|---------------------------------------------------------------| | Mnemonic | Action | |----------|---------------------------------------------------------------| | Do | Create a TODO in your org-mode Inbox with the email linked. | |----------|---------------------------------------------------------------| | Delegate | Send email to delegate with item and see below for flow. | |----------|---------------------------------------------------------------|

Delegated tasks get handled like Do's that need followup in the Gmail Inbox flow:

  1. Send email to delegate with instructions, deadline, and (important) checkpoint
  2. Tag item Wait
  3. Create a GAVE in your org-mode Inbox (or daily) with linked mail, and set the DUE: date mentioned as the checkpoint on the task and any tags (for example, I set the person I gave it too and the week of the Checkpoint date).
  4. Archive the mail

Step 3 - Back to org-mode to GTD

At this point, your Inbox should be empty with everything that can be done quickly being done (even clarifications, which are then liked to a WAIT followup item for reply in your org-mode), delegated items so that you now have a GTD item followup for that, or are now TODO items also linked to mails in your Starred folder.

From here, I generally do a quick bit of refiling (as mentioned in the previous blog post) from my Inbox file for org-capture (inbox.org as it happens) to the appropraite daily file for the day in YYYY-MM-DD.org format, usually under the :perso: or :work: headings tags I have.

Shampoo, Rinse, Repeat

From there, I head towards my usual org-mode daily work flow and the agenda view to see how much trouble I am in for any particular day. From there it's an easy matter to keyboard into a Todo item and open the email link with a simple CTRL-c CTRL-o, do what I need to and then CMD-Tab to get back to emacs terminal to update the log on the item, close it as DONE (or in some cases KILL/cancelled, or move the DUE date forward to a day when I need to chase the item again.

This means you do not actually have to process the WAIT folder ever directly as you depend on your org-mode to handle those things within your flow. I do recommend having good hygiene about rolling things forward weekly (you can check for stale items if you follow my system just by doing a once weekly search on the previous week's tag ie. :w19: and manually updating any items and their due or scheduled dates to get them back into the flow.

Additional tips

Enable keyboard shortcuts in Gmail's web client (I do not use a desktop client anymore though probably shoud for long plane rides). You can bring them up by the ? when you are in the web client, and then enable them directly from the pop-up window.

They are vim-like but being able to type g i to go to your Inbox and then the vim-standard k/j to move up and down your list is super handy and faster than mousing (ymmv).

To move an item to your starred action list when it is selected via k/j browsing, hit s e to star and then archive it. Once processed, head over to your starred items via g s and do the same there.

One of the pains with the lack of emacs being integrated into OSX well is it's tricky to get the copied URL from Gmail easily. My best solution to this (I use Safari) is to use CMD-L (which highlights the URL field) and then CMD-C to copy the URL into the clipboard. Then it's easy to use CMD-Tab and an org-mode Capture template to get the TODO item sorted into the Inbox (tho I'd love a way to be able to do this with Alfred easily without switching apps. Anyone?).

Abuse CMD-Tab heavily to move from your web window (I keep my mail tab pinned) to the terminal emacs (which I have full screened) to get the TODO items into org-mode. I'm sure this flwo would probably work better if I just did my email in emacs but I haven't quite gotten neckbeardy enough for that yet (If anyone does have a nifty method to automatically pick up the URL of the mail and drop it into clipboard for the TODO org-capture template for org-mode I use, I'd seriously love to hear it.).

(Oh, and one final one... if you are using GMail, do backups. It is not infallible, and let's face it, there is a lot of context in there. I backup daily from both my personal and work accounts using the fire-and-forget GMVault which I have set up to a cron job on my machine).

A Final Word on Slack

One of the classic tenets of David Allen's GTD system is to get things into one place of ubiquitous capture and use that to process what you need to do.

I have to admit, one of the more challenging things I find about companies that have switched over to Slack and use it instead of email (or, even worse, on-top of email) is finding a way to parse and capture the 10s of inboxes (and now threads... ugh) that Slack seems to create. I'm still looking for a good way to handle capture/processing this way. Would love tp hear what other people have sorted out in terms of Slack and GTD (maybe a Slack bot that sends a linked item to my Dropbox inbox.org?).