My GTD Workflow (2019 ver.)
You are reading this article now. It's quite hard to discover this small corner of the World-Wide-Web. So I assume you are also reading a lot of other articles online as well.
The number of the articles you want to read may already have exceeded your capability to remember them, not to mention to read them all. You put them in your browser favorites, or organize them in a "Read it later" service (like Pocket). But later, you find out that Later Equals Never, some of articles in your Pocket are never going to be read by you again. So how to fight this tendency of not getting things done after we put them into our inbox?
And this question goes far beyond "Read it later". It exists everywhere.
- Managing software projects
- The backlog items keeps growing and the growing speed is getting faster.
- Managing TV series to watch
- Like reading lists, there are more and more shows we can watch nowadays.
- Managing blog posts to write
- I still have a lot topics that I want to touch on but haven't got the time to do it.
And all of them are all about the same question: how to get things done (GTD)?
In this article, I want to share the GTD workflow I'm using now. Hopefully, this can shed some light on how to win that fight between us and all the todo items we have.
Write Things Down
To get things done, we need to write these things down first.
As the old saying says:
One dull pencil is worth six sharp minds.
With all the information that gets generated in this world nowadays and all the areas we want to participate in, it's impossible to keep them in one person's mind. Our brains are for generating ideas instead of remembering things.
So, writing things down become the first step to win this long-going fight. To do this, we have various options:
- You can simply start with papers + pens. Just dump out all the ideas or todos from your brain and persist them on paper.
- Or if you want to embrace a digital life, you can choose GTD apps like Things, Omnifocus.
- I personally use Org mode for almost all the GTD stuffs I do. If you are interested, you can check this post I wrote: How do I use org-capture on Mac.
It's kinda easy to write all things down. It's just like putting all the articles into "Read it later". Thus it's our first step and we have more important principles to follow to make this workflow work.
The next step is to set deadlines for everything we capture.
Why we need deadlines?
Without a tool or process to remind us regularly about these things, it doesn't matter that much where we store these things. We would never have time or even remember to check these things again, even if they are just inches away from our reach.
One way to remind us about these things is to set deadlines. We let time, a tool/friend everyone has, to naturally come to us and say "this task is due soon", so that it brings that task to us.
How to use deadlines?
Of course, it isn't enough to only rely on time itself. We need to either check deadlines regularly or let our tools to remind us.
It's not easy to keep a habit of checking task deadlines everyday, unless we organize them by deadlines upfront. For example, if you are using papers to record tasks, put them on a kanban board or calendar.
Things get much easier if tasks are all digitalized. Modern GTD tools all have features for setting deadlines. And they would have push notifications or things alike to remind you when the deadline is close.
Set deadlines to when?
It's easy to set deadlines when task comes with a deadline itself. For example, it's a task assigned to you by your boss, or it's a thing you need to do otherwise it would expire. You just set the deadline as requested.
For things that don't have a natural deadline, I choose to set the deadline to the end of next month. Basically, it means I need to finish this task next month. Your choice may vary. I think 1 week/2 weeks/1 month are all great choices.
This idea of setting deadlines according to natural time spans is borrowed from the concept of Sprints. If you are interested, you can read Personal Sprints: Applying Design Thinking to Your Life - Praxis.
After I started setting deadlines for every task I have, I soon ran into the problem of lack of priorities.
Since I have too many tasks set for one month, when I start my day, I'm still lost. In another word, the situation of having more things than my capacity still doesn't change at all.
Then I realized the most important piece that I was missing: priority. (Or you can call it goals, objectives, or whatever makes sense to you.)
Why is priority important?
Without priorities, all the items in our inbox look almost the same. It would be hard for us to know which task to work on first, or which task is okay to fail or cancel.
Only with priorities/goals in our mind, can we see a path or build a plan to start working and keep the momentum going forward.
- How to set priorities?
Set yearly/monthly/weekly/daily goals
To know our priorities day by day, we need some higher level goals. The approach I'm using now is to
- set yearly goals in January
- set monthly goals based on yearly goals on 1st
- set weekly goals based on monthly goals on Sunday
- set daily goals based on weekly goals in the morning
There are several benefits using this top-down approach,
- the bottom-level priorities would come up naturally,
since we only need to
- either pick goals from the upper level
- or break them down into finer grains and pick from these sub-goals.
- each goal-setting session would be quick, since we only need to focus on setting goals that reside on current level
- Priorities/Goals and deadlines are complementary to each
other. So always set deadlines for your goals, and consider
when's the best time for your deadline based on the goals you
- Goals without deadlines aren't goals; they're merely directions.
- Deadlines without goals aren't deadlines; they're merely timestamps.
Capture new tasks based on importance and emergency
For tasks that emerges along the way, I would follow The Eisenhower Matrix:
Urgent Less Urgent Important Do first (Schedule to this month/week/today) Schedule to next month Less Important Delegate Don't do
A specific example for dealing with things that are important but less urgent is "Read it later". By scheduling "read later"s to next month, I can look at them when my reading impulses fade away after a month. So that articles are really important would be set as monthly-goals, while less important articles would become obvious and would not be chosen to be read at all. This can save a lot of time for me. So I can have more time to spend on truly important things.
Last but not least, we have to review our progress regularly to help ourselves improve continuously.
If we are not reviewing our progress at all, then non of things we mentioned above would make any sense anymore.
- Deadline means nothing now.
- Even if a task dues, we would not check this task again and ask why it is not finished and how to deal with it next.
- Priority means nothing now.
- Priorities are not static and they need to be updated in real time.
So I've combined my goal-setting process with goal-review process. Whenever I'm going to set goals for the next time span, I would review the progress from the previous time span first. See what I can improve next and what to do with unfinished goals.
Basically, the easiest way to do the review is to treat it as a normal task. Write it down, give a recurring deadline to it, set a high priority for it, get it done, review it.
A few tips on how to review progress:
Always stretch yourself
We need to stretch ourselves when we set goals. So sometimes a 100% completed plan means that we are not trying enough. Sometimes a 70% complete is good enough. And we can think of ways to improve next time.
Note that it doesn't mean we need to aim for 70%. We should always aim for 100% complete. It only means when you are setting the goals, always set them so that you know you need to work harder this time to achieve it.
Cancel unimportant tasks after a few misses
Another important benefit we get from this workflow is that we can see the importance of a task through some rounds of processing. Then we get the privilege to cancel tasks.
When a task has been missed for several times, it might be a heuristic that this task is not as important as you thought. We need to think If this task really matters to me? After all, there must be a reason for not finishing it. And very likely, this reason is that this task doesn't really matter.
Break down daunting yet important tasks
Then what happens to the tasks that have been missed for several times, yet you still think they are really important?
We need to break down these tasks into more manageable sub-tasks. And set deadlines for each of them.
The Workflow I'm Using Now
To summarize a bit, here is an example for this workflow:
- When year 2019 started, I set a yearly objective to "Improve Management Skills", with priority set to A (highest compared to B/C) and several key results like "Read book Nonviolent Communication", "Implement an OKR system at work", etc..
- On April 1st, I picked "Read book Nonviolent Communication" as one of my monthly goal with priority A.
- Then I broke down "Read book Nonviolent Communication" into sub-tasks based on Chapters.
- Whenever a week started in April, I opened the monthly goals list and pick several chapters as this week's todoes.
- Everyday, I picked one chapter to finish.
- Then, an article about OKR comes up in my Twitter feeds. Since it's related to one of my yearly goal "Implement an OKR system at work", I capture this article as a todo (with priority C since it's just an article) for next month (2019 May). So this article would go through almost the same lifecycle as the book Nonviolent Communication.
- Whenever each week/month ends, I review how things went for all the goals I set before.
- When 2019 ends, I will review how my 2019 was based on 12 monthly reviews, and see how the yearly goals for 2019 progressed.
Basically, this is a rough explanation for my workflow. If you still have questions, feel free to ask in the comments below.
How I Feel Using This Workflow
I've been using this workflow for almost half an year now. And I can say it definitely has made my life easier.
I'm no longer nervous as before. I used to think I have too many things to do, too many books to read, too many movies to watch. Now, since these tasks all live in this GTD lifecycle, I know what I need to finish and what I can finish everyday. Having this kind of clear scope gives me confidence to manage all of my tasks.
The next area for me to improve is to see if I need some buffer time. Sometimes when I was setting goals, I was too stretching or forgot to count in vacations, so when I came back, I had too many due tasks.
So what's your thought on this GTD system? Do you have any suggestions? Leave your comments!