My execution system
Table of Contents
In 2006 I wrote an article, "Getting Things Done" has taken over my life. At the time I was a systems administrator trying to juggle meetings, emergencies, last-minute interruptions, and longer projects and tasks, and I was overwhelmed. GTD has been and continues to be my solution for managing work, although my specific tools and techniques have changed over the last twelve years.
Key takeaways
Here are my top lessons learned from 12+ years of GTD:
- Do not skip weekly reviews. Weekly reviews are the lifeblood of an execution system. Weekly reviews make sure your system stays "in control" enough to continue to be useful. When you think you don't have time for a weekly review, that's when you most need one.
- Weekly reviews catch major mistakes. One of my most important weekly review tasks is to check my calendar for the next few weeks. I often find that I've forgotten to send an email, or that a key meeting is coming up and I'm not at all ready.
- It's OK to renegotiate commitments. Sometimes you've made a commitment to yourself (or others) and you realize that you can't meet that commitment–maybe via a weekly review! It's OK to reach out and renegotiate that commitment, and it's better to do so early.
- Acknowledge reality and learn from it. If you're getting a lot of work via paper, accept that and build a process for tracking that work. Don't pretend that the inbox doesn't exist or that the work will get done some other way. If you're missing deadlines, try to accept the problem and investigate.
- Complacency is normal; expect bursts of change. After you settle into a system, you will eventually think of it as normal and eventually take it for granted. However, you may get the energy one weekend to review what you're doing more thoroughly and make significant improvements. I haven't noticed regular weekly improvements to my system–instead, there have been larger, more noticeable changes that have made me significantly more productive.
- Getting things done ≠ getting the right things done. It's easy to find yourself drowning in tasks you created for yourself that aren't really that important. You may need to cull your tasks by postponing "next actions" and deleting postponed tasks.
GTD progress over time
Over the first year or two of using GTD, I built a large backlog of tasks–I remember it was somewhere around 250 tasks being tracked. Many of these were deferred in some way. I then had a breakthrough that brought me down to ~150 tasks at a time, and again a year or two later I had another breakthrough bringing me down to ~80 tasks at a time. I can't remember the exact breakthroughs; I think they involved me taking a full weekend to review my system.
My system at that time made heavy use of Outlook tasks, so when my work switched from Exchange to Google Apps I was in a bit of a pickle. I then found toodledo, which was one of the only task systems that seemed more configurable than Outlook tasks. (With Outlook tasks I had built VB macros to create my weekly tasks!) Toodledo has some neat features such as "optionally due on" for recurring tasks. "Optionally due on" tasks will silently go away if they aren't completed, e.g. if you'd really like to process your paper inbox each day but maybe you don't get around to it.
Later I started to use Evernote as my primary reference source. I also created an Evernote notebook 1 inbox
that's my default notebook for new stuff, so I use Evernote as an inbox as well as a reference source. More recently I've started using Google Keep as another inbox, because it best integrates with my Android phone. When I say, "OK google, note to self" the note goes into Google Keep and I can listen to the raw recording if the transcription isn't correct.
Probably around 2010 I did an intensive review of the emails I sent and realized I could cut my email way down if I had a better system for tracking work with people on my team. To that end I built a Google spreadsheet system for sharing issues logs with team members. These spreadsheets then became their own sort of inbox.
Since then, I've made a few improvements but mostly my system has stayed the same. The most recent improvement is adding annual reminders for people's birthdays.
Current system
Toodledo
Fields
The fields I use in Toodledo are
- Folder
- Context
- Start Date
- Due Date
- Repeat
- Length
- Priority
- Status
- Star
- Trashcan
I leave "Priority" the default except for very stuff that can/should be done at the end of the day (low priority) or stuff that should be done at the beginning of the day (high priority).
I only set "Due Date" for true due dates. I set "Start Date" when I can't take action until a given date.
I use "Star" often to tag tasks I'm going to do right now.
Contexts
I use these contexts:
- errands
- home
- home outside
- context for each family member
- now
- on-line
- phone
- work campus
- work office
- work online
The "work" contexts are a bit of a cheat. Mainly this is straightforward GTD: assign tasks based on what you need to have to do them rather than why you're doing them.
I mainly use "now" for my weekly review tasks, but I can use it if I'm going to be doing a big block of work I'm defining right now.
Statuses
Although toodledo provides more statuses than this, these are the statuses I use:
- Next Action
- Planning
- Waiting
- Postponed
- Someday
I only use "Planning" for when I have a task with sub-tasks. For waiting tasks, I almost always start the task name with "w/f XYZ DD/MM:" such as "w/f lawyer 2/1: execute contract." This helps me remember to follow up in my weekly review if it's been a while.
"Postponed" is for tasks that I'd like to do but realistically I won't be doing in the next couple of weeks. "Someday" is for tasks that I've almost given up on but don't have the heart to remove, or very occasionally tasks that I'll then "promote" to "Next Action" or "Postponed."
Searches
- all non repeating tasks
- Completed today
- due by today
- Due while I am gone
- home at night
- non work
- repeating tasks
- Starred
- work
Almost all these searches share the same criteria:
Status is None, Next Action, Active, Planning
Start Date doesn't exist or is before tomorrow
Context is No Context, now, other specific contexts
Tasks should never have a status of "none", so I want to see those. I also always want to see tasks with no context or the special "now" context.
"Due while I am gone" is extremely helpful prior to going on vacation. I edit the "due date" to the day I'm back, and then review all the tasks that are supposed to happen so I can do them or renegotiate them.
Weekly review
Here are the tasks in my weekly to-do list. Many of these are "check" tasks to make sure that I haven't forgotten anything and/or I close the loop on outstanding items.
- review Evernote "stuff I'm thinking about"
- review hangouts conversations
- check phone voicemail on phone
- review cell phone recent callers list
- process phone camera pictures
- take out office trash
- clean office whitebard
- clean office incl. drawers
- review toodledo folders and goals for next actions
- review logger emails
- review follow-up, w/f emails
- review toodledo for items that should move to Jira
- clear out e-mail "lists" folder
- clear tmp folders – computer, Google Drive
- look at the calendar for the next weeks
- review Jira email folder
- review OneTab tabs on desktop machine
- review downloads & trash on laptop
- review desktop icons
- review toodledo tasks by status, incl due dates
- review wallet incl business cards
- review OneTab tabs on laptop
- review Evernote noteboooks
- empty downloads & trash
- review work bag of holding
Monthly/quarterly/annual tasks
In the last year I've added longer-term repeating tasks. They roughly fall into this structure:
- Birthday reminders
- Regular maintenance (e.g. monthly take things to goodwill)
- Semi-annual house maintenance (e.g. checking fire extinguishers)
- Money-related e.g. paying bills
- Nice-to-have clean up, quarterly, e.g. removing Android apps, reviewing Amazon wish list
I'm starting to use toodledo's repeat using "completion date" instead of "due date" for these; if you repeat using "completion date" then a monthly task will start one month after you previously completed it, rather than (say) starting on the first of every month.
Most important email tip: turn off all notifications.
I use these email folders:
- Inbox
- Sent
- 1 w/f ("waiting for")
- 2 follow-up
- archive
- lists
- logger
- Jira
- blank
The "waiting for" folder is for emails where I need to hear back to make sure that the loop is closed. When I'm sending a message, if I expect a repsonse I take my sent message and put it into the "waiting for" folder. Then, in my weekly review I check to see whether the loop got closed.
The "follow-up" folder is for emails that I want to double-check I follow up on, but I am the responsible party for taking action. I put tasks into toodledo but the email in the follow-up folder is a reminder to make sure I close the loop on the email thread. I don't use this folder much.
The "lists" folder is for all listserves and low-priority notifications. I check this once a week in my weekly review.nv
"logger" and "Jira" are temporary while I get a better handle on notifications from these tools.
The "blank" folder is so that I can select it to get a blank screen. I leave my email screen and come back to it, I'll then see a blank screen rather than see all the new emails I've received. I use this many times a day.
Inboxes
Here are the inboxes I try to process each day, using "optionally due on" daily tasks:
- process paper inbox
- process email inbox
- process keep notes
- process Evernote inbox
- process OneNote inbox
- process work HR system tasks
- process home paper inbox
- process home email
- process work composition notebook
- process paper inbox
I also try to do other checks outside my weekly review:
- process Google docs, using the search
after:YYYY-MM-DD type:document
- review meetings that have been held
- tasks scheduled for right after recurring meetings/events, e.g. "process team meeting notes"
All this checking is valuable, but as you can tell it's a bit overkill. One of the negative impacts of having so many inboxes is that it can take several days for me to follow up on something quick. I need to reduce the number of inboxes I have, and/or reduce the frequency of some of this checking. I also should probably decide which inboxes are "high priority" and check those more regularly.
Pomodoros
I use the Marinara: Pomodoro Assistant plugin to Chrome to track pomodoros. I'll star tasks that I want to do within the pomodoro and then work through them until Chrome tells me it's time for a break.
If you're not familiar, the pomodoro method is just working for a period of time (usually 25 minutes), usually with a specific task or focus, and then when you're done you take a 5 minute break. This helps a lot when I'm trudging through monotonous tasks and/or when I don't want to feel guilty about taking breaks.
Groceries, specifically
A few years ago we set up a very successful kanban for groceries system. Unfortunately, when we moved we never set this system back up. Sometimes I'll create an "errand" task for a particular thing we need to buy; sometimes we use Amazon Fresh and look through past purchases for things we may not have at home.
Calendaring
I keep my work calendar religiously up to date, including a "before work" and "after work" daily recurring entry to show my coworkers when I'm not at work. I have taken to blocking off some of my calendar time when I need bigger blocks to complete pressing work.
We also have a family home calendar, where we track both confirmed appointments and potential events, like the Children's Film Festival happening now.
When I do a weekly review I check my home and work calendars; this helps me catch times I've forgotten about a doctor's appointment or times when someone might be visiting.
I have a "blank" calendar both at work and at home so that I can see an empty calendar when I want. This is helpful if you're in a meeting and want to pull up a blank calendar quickly.
Reference systems
Evernote
My primary reference system is Evernote. My notebooks are structured into these stacks:
- Standalone notebooks: "1 inbox", "2 toread", "3 blank"
- Active projects stack
- Archive stack
- Shared notebook stack (shared with family members)
- Life stack, which includes a notebook "Facts"
- Work stack
Notebooks in "Active projects" are for things I'm currently working on or researching. For example, when I was learning about Docker I had a Docker notebook. When I'm done with these notebooks I usually collapse all the notes into one note, put that note in another book, and delete the notebook.
The "Facts" notebook is extremely helpful. It has notes about…
- Clothes sizes (e.g. my collar size)
- Car VINs
- Lockbox contents (what's in our bank lockbox)
- Pictures of car license plates
- Furniture and appliance specifications e.g. serial numbers
- Light bulb sizes
- Dates for when I last requested my free credit reports
My family now has a "To watch" notebook for TV shows/movies we potentially want to watch together, and we have an "Events" notebook for events/activities we might want to do.
Password manager
I'd be remiss not to mention my password manager as another reference system. In addition to storing passwords, it helps me remember the systems that have my personal information. It also holds my membership card information.
Work Google Drive
I use Google Drive for most of my work-related files.
Work wiki
Completed/finalized work, if still relevant afterwards, goes into the wiki whenever possible. This way it's shared with everyone rather than just me.
Dropbox
I don't have a good reason for using Dropbox, except that sometimes Android tools can synchronize more easily with it. I'm trying out Orgzly for example, which synchronizes org-mode files using Dropbox.
Home Google Drive
I use Google Drive at home for groups I'm a part of, as well as for planning work that fits well with Google Docs and Google Sheets. For example, Google Drive holds the list of camps that our kid has gone to each year.
Managing larger units of work
All of the above is great for addressing individual tasks, but toodledo doesn't make it easy to structure larger blocks of work.
I am very familiar with using tools such as work breakdown structures to name the work to be done. At work, I'll build a WBS and track items a planning document, such as a Google doc. I might record and possibly sequence the work in Jira. I am also experimenting with using org-mode for tracking longer sets of TODOs.
At home, I've used tools like Teamwork to build simple tasks/subtasks. That said, I've had few home projects that need this level of tracking knocks on wood. For example, the last time I built a Teamwork project was for moving to a new house.
Opportunities for improvement
I built all the above over a long period of time. It's a complicated system but fits me really well. That said, here are some of my current challenges with this system:
- The tasks aren't fun. I look at my task system all the time but the system doesn't energize me (except on the occasional day that I get through a block of longstanding tasks). I'm not sure how to make the system more fun?
- No sense of important vs. less important work. Some of the tasks, like "register kid for summer camp," are extremely urgent and I'll also feel good when they're done. Other tasks, like "claim credit card rewards," are not urgent and minimally satisfying to complete.
Each individual item seems reasonable, but the totality is overwhelming. For example I have these errand tasks right now:
- buy shampoo
- buy shaving cream
- put documents in bank lockbox
- get haircut
- take things to Goodwill (monthly)
- take vitamins to medicine disposal
Any of these would be easy to do. All of these would take several hours. What of these tasks should be deleted? What should be moved to "postponed"? What should I just do?
- Enables procrastination. Because I trust the system so much, especially when I'm at home I won't go through my tasks. This is probably exacerbated by the preceding points.