Getting Things Done (aka GTD) is both a book by David Allen, and the workflow ideas introduced in that book. It has a strong almost cult-like following. I read the book a few years ago and was converted. It was really a life-changing book.
Here’s the super simple explanation of GTD:
Your life is filled with “open loops,” which are things you have to do, delegate, defer, or drop. GTD is a system for collecting those open loops, breaking bigger loops (“projects”) into discrete actionable tasks, assigning a context to each task based on what resource you need or situation you must be in to accomplish it (i.e. phone, internet, grocery store, home, office), and figuring out a “next action” for each project (which is the next task you could do to move that project forward). That’s it, in a nutshell. You gather and process like that, and when you’re ready to get some things done, you work based on context. So if you’re on the train, and you have access to your phone and an Internet connection, you can do any of your next actions that have an “Internet” or “phone” context. Things that have a “home” context don’t concern you, because you’re not at home. Things that are “phone” context but aren’t next actions don’t concern you because you have to do something else before you get to that. The idea is that you get these open loops out of your head, where they rob you of your focus, and into a system you trust. Once they’re in a system you trust, these things magically stop bothering you. They’re in a system, and the system worries about keeping track of them, not you. Seriously, go buy the book — it’ll blow your mind how much sense it makes.
In the last couple years, “GTD apps” — software applications that keep track of your open loops, and show you your next actions for a given project or context — have exploded onto the scene. The most notable is probably OmniFocus, an OS X application (with an iPhone component). Merlin Mann, a well-known GTD advocate and a productivity visionary in his own right, was hired to consult during the development of OmniFocus. I use OmniFocus. It’s certainly capable — but its UI is too complicated, and it is held back by the same quirky UI used by its creator for their other applications (where that UI makes a little more sense). It almost feels like they copy/pasted large portions of their other software together to make OmniFocus. At times, using OmniFocus feels like its own set of open loops! There are all these buttons and menus and views and stuff that you’re not using, but you have to think about every time you open the app. There is definitely room for a simpler, yet fully GTD-workflow-capable OS X application.
“Things” by Cultured Code… is not that application. At least not yet.
It’s genuinely heartbreaking to me that “Things” can’t fully do a GTD workflow, because it’s really a well-built application. I want so much to like it and be able to use it. Gone is the cluttered, legacy interface of OmniFocus, and it is replaced with a gorgeously designed, deliciously simple interface. It just screams “use me, then move on.” It invites you to dive in and start using it, but it doesn’t have so many bells and whistles that you’ll get distracted and lost in a never-ending quest for “the perfect configuration.”
Even though the application is not promoted by Cultured Code as a GTD app (I haven’t found a single instance on their site of them saying that it is a GTD app), countless reviews and articles have claimed that to be the case. They’re wrong.
The flaw seems small, but it absolutely kills a critical part of the GTD workflow. “Things” assumes that tasks can be completed in any order, and thus destroys the concept of next actions. “Tags” can be used as contexts, but it is impossible to get a usable GTD context view. For example, consider two hypothetical projects (the “@” is just a generic context prefix):
Project: Get engaged
- Call future mother-in-law and find out girlfriend’s ring size @phone
- Go to store and buy a ring @errands
- Call a fancy restaurant and make a reservation @phone
Project: Install new fence
- Buy post hole digger and fencing @errands
- Dig holes and install fence posts @home
- Install fencing @home
In both cases, #1 is my next action. According to GTD, if you found yourself out and about at this point, you’d have #1 from the fence project available. If you found yourself near a phone, you’d have #1 from the engagement project available. Here’s what you’d see in “Things” if you chose the “Errands” context tag:
What the heck? Buy the ring!? I can’t do that yet. I haven’t called my future mother-in-law and learned my girlfriend’s ring size. There is no way to tell that “Buy post hole digger and fencing” is actionable while “Go to store and buy ring” is not. They both show up on my “Next → Errands” screen. How about my “Home” context? Well that’s just going to tell me that I need to dig holes with the post hole digger I don’t have yet! Argh! In Internet parlance: GTD FAIL.
So what should the talented, sexy, and graciously obliging developers at Cultured Code do to remedy this? Simple: add a small toggle button for projects that switches between “parallel” and “sequential” — or maybe just a checkbox that says “must be completed in order.” Some projects’ tasks can be completed in any order… they just need to add the ability to have projects with sequential tasks. Additionally, instead of just choosing how many actions to show from each project when viewing in tag (i.e. context) mode, there should be options for showing only “available” items, where “available” means “is a next action for a sequential project, or is any action from a parallel project.” Do that, and I’ll praise “Things” at the top of my voice as a fully functional GTD application.
Eric Marden says
You know, until now I’ve not missed the “order-of-operations” functionality. Now its a glaring hole. Thanks a lot 🙂
Mark says
Heh. I stumbled upon it almost immediately. It was very depressing. Would be nice to get some sort of feedback from Cultured Code about this (and yes, I did e-mail them about it).
Travis says
Hmm. Interesting point.
I don’t ever let next actions I have to do in sequential order ‘leak’ out into my system like that – usually because item #3 or 4 down the list has the potential to change as a result of the outcome of completing task #1. Too often even making a sequential list ended up being a waste of time.
It’s a stretch, admittedly, but what if upon calling gf’s mom you discovered that deep down your gf has always thought the whole engagement ring was stupid and preferred the idea of getting a tattoo? There goes item 3 on your list.
I now focus solely on *the* one next action needed to move a project forward. That’s the only one that gets a context. Everything else sits in the queue of the project either as a note or as a task without a context.
Therefore I really never have this problem, regardless of what application/method I’m using to track my tasks, and I still think the app is totally capable of doing GTD.
Good suggestions about sequential tasking vs. parallel, I just don’t think it will affect my use either way.
Mark says
That’s an interesting approach. But doesn’t that mean that you’re doing a lot more processing? You’d have to process your non-contextual actions after performing any action — to queue up the next “next action” in line for that project.
Travis says
Yes, probably.
I found that I was (quite often) having to process a completely new set of next actions anyway if one had an unexpected outcome. This way at the end of a task or at the end of a day, I process to get to the next “next action” with proper context and leave it at that.
Also, quite often I get on a roll and bust through 2 or 3 related actions on a project in a row without even thinking of any actions beyond my initial one.
alex says
Hey Mark, have you ever tried the iGTD desktop app? I have been using it for about a year, and find it to work well enough. Just wish it was more cloud friendly!
The Buffington method of using Quicksilver and iGTD also is great for those on OSX: http://bit.ly/3FjLoO
Michael says
Hey Mark – I’ve run into some of the same limitations and had a day of head scratching trying to organize some more sequential, complex to-dos today with Things.
Then just now I stumbled on a new app called The Hit list via Twitter and this post at suberapps. Looks like it’s still rough around the edges, but might solve some of the headaches Things is throwing out at the moment (it does keyboard shortcuts, sublists and seems to have some nice additions while keeping it simple). No native iPhone app yet though.
Hopefully this will encourage the Things people to add some of the missing functionality, or else supplant it for people that need some of these features. Haven’t tried it yet, but it’s on my.. list.
Jeff Bridges says
I wondered about this too, but then I found a menu option that will make it so ONLY your very next action under each project is displayed in your “Today” list.
In Things, go to “View” on the menu bar and select “Next Action Steps.” Then select “1” under “Number of Remaining Project Steps Displayed.”
Problem solved!!! Though personally, I like having the next two or three displayed, because occasionally I can work on some actions concurrently. A better option would be for Things to let you adjust the number of next steps displayed for each project, but that could make the beautiful interface a bit more kludgey, and who wants that?
Mark says
No. That doesn’t solve it — it still shows you items that are not the next action in the project. Look at my screen shot. I had it set to display one “Next Action Step.” It’s not showing you next actions, it’s showing you one action per project that happens to have the tag (context) you’re looking at. That item may or may not be available to perform, pending some other actions in other contexts.
Mark says
Trying it out now. Love the keyboard-centric UNIXy controls. Unfortunately it doesn’t look like it handles “next actions” per project either. Sublists doesn’t appear to do it.
OmniFocus is clunky, but it has this nailed. I can designate projects as parallel or sequential by toggling a simple icon. I can view only things that are “available” (next action in a sequential project, or any action from a parallel project).
gary says
It should be noted that David Allen suggest paper, or the simplest tool available, for GTD. So if I use paper, and write down a project, I see all the actions. None are hidden. Are you saying paper isn’t good enough for GTD?
Things isn’t perfect, but it’s close. And while this may be a flaw, saying Things can’t do GTD is hyperbole. I use it every day for GTD.
Mark says
You shouldn’t be working from your project list, you should be working from your next actions list. With a paper based workflow, you obviously have to move items into your next actions list manual. But an application can do that for you.
msw says
Why not create a “next actions” tag? You can filter on multiple tags in Things, so you could easily get your next actions for any context.
Or create a “Next Actions” area and throw your number 1’s in there.
Things is too flexible, simple, and elegant to state flatly that it can’t do GTD.
My 2 cents…
Mark says
Why should an application embrace the limitations of paper? I want to use an application because it can do mindless tasks like finding the next action in a sequential project and adding it to my list of next actions, by context.
Daniel Steinbock says
I’m a Things and GTD newbie, so maybe my flow is a little less entrenched than yours, but I’m satisfied with Things’ ability to hide anything that’s not Next.
Things does support sequential tasks. The order of actions for a project is set by dragging tasks around under the project’s view. When I look at the Next screen, the top task for each project shows up under its project name. You can configure how many top N steps to show under the view menu. I only want to see the very next one, so I have it set to 1.
So Things supports sequential tasks. The issue I see you raising here is that you want *contingent* tasks. Your example shows what happens when you want to filter the Next screen by context — e.g. clicking the @errand context tag. When you do this, Things is designed to show the first @errand task in each project, no matter how far down it is in the order of actions you’ve set in the Project view. I understand that you want such tasks hidden from you if they are contingent on earlier tasks.
I agree that that would be handy, but the implementation is more complicated than the one you suggest. Projects don’t neatly fall into parallel and sequential categories — usually some tasks are contingent and some ain’t. In your example, making a restaurant reservation is not contingent on buying the ring, the way buying the ring is contingent on finding out the right ring size.
I think Cultured Code made a reasonable design decision in order to keep the interface minimal. In your case, it requires making a quick review of the enclosing project to see if that @errand is actionable or not.
A better solution might appear when sub-projects are implemented by Cultured Code, which I hear is in the works. Buying the ring (1. find out the size, 2. buy it) is a sub-project of getting engaged which has other subprojects (Going on the date 1. make reservation 2. buy flowers), etc.
Satisfied says
I have been practicing GTD religiously for over a year. I migrated to Things about 6 weeks ago after researching several different alternatives in great depth.
I have about 15 Areas that contain over 50 projects with a total of over 200 Next Actions.
I have NEVER ONCE experienced the problems Mark is so wrapped around the axle about re: “sequential” (when he actually means contingent or dependent) tasks. I understand, conceptually, what he’s talking about, but it’s just not that big a deal and doesn’t affect me at all.
Maybe this article should be titled “Why ‘Mark’ can’t do GTD.”
Cameron says
Erm. Sorry to necropost, but if you have 50 projects, shouldn’t you have a grand total of 50 next actions?
Sean Mitchell says
Hey! Excellent review of ‘Things.’ You should check out ‘The Hit List’ (THL) by PotionFactory as I have found it to work well with GTD. It allows you to specify ‘context’ for tasks. It has the same look and feel as ‘Things,’ although I tend to prefer THL’s interface more thanks to their shortcuts. There are some things I like about “things” much more, including the click-dropdown for more info feature, they already have an iPhone app and it has less bugs (being THL is pretty new on the block). I’ve found THL to work well with a GTD workflow … although just like ‘Things’, it could use a bit more work.
teyzane izle says
think Cultured Code made a reasonable design decision in order to keep the interface minimal. In your case, it requires making a quick review of the enclosing project to see if that @errand is actionable or not.
Franz says
[quote]I have about 15 Areas that contain over 50 projects with a total of over 200 Next Actions.
I have NEVER ONCE experienced the problems Mark is so wrapped around the axle about re: “sequential”[/quote]
So when you find yourself in a certain context, and select the corresponding tag – are you telling me every single one of those tasks are next actions, and are actionable? I can’t see how this is possible but perhaps we use the system in different ways.
the way I am accustomed to using GTD apps puts me in agreement with Mark.
I find it essential to be able to quickly and at any time know what my next actions are for a given context. If I am at the grocery store, I should be able to switch to that context using tags and view all grocery store items which are actionable – next actions don’t include tasks contingent on earlier tasks
Andhika says
Franz says:
| So when you find yourself in a certain context, and select the corresponding tag – are you telling me every single one of those tasks are next actions, and are actionable? I can’t see how this is possible but perhaps we use the system in different ways. |
Isn’t that what Allen’s GTD suggest? I.e., only list as “Next Actions”, things that are doable at the moment. IIRC it was described clearly in the examples in the book.
The example Mark given in this blogpost is different. That’s like putting “Planned Actions” as “Next Actions”. Shouldn’t these “planned actions” (per Allen’s GTD) be put in the Project notes/plan?
Hence –IMO– the said reason is not valid to justify the title “Why… Things app can’t do GTD”.
Note: I’m not saying that facilitating “sequential actions” is a bad idea, because it’s very useful (also saves time and energy). If the title is fixed, this would be an excellent case-study.
Btw is there any update from Cultured Code regarding this matter?
Thx
Kristof says
I believe that if you run into the above problem you haven’t understood the philosophy of GTD. GTD is about determining the next actions and not ALL actions. If one has a reasonable number of projects and has to capture all possible actions related to a project you spend more time on thinking and re-thinking all action steps required to complete the projects than on completing the project itself.
The completion of the phone call to the mother in law will trigger automatically the next action which will move the project towards completion. No need to write it down upfront.
As a long time GTD-er I have tried many tools (including paper, RTM, Things, Toodledo, outlook GTD plugin, Omnifocus, Nozbe, …) and I can tell you none works as good and efficiently for me than Things.
Mke says
“No need to write it down upfront.”
I think there is if one wants to clear onces mind. Otherwise I’d keep thinking about the things I’d need to do after the current next action. Writing all that down is one of the core parts of GTD isn’t it?
gary says
“You shouldn’t be working from your project list, you should be working from your next actions list. With a paper based workflow, you obviously have to move items into your next actions list manual. But an application can do that for you.”
You’re confused. GTD is a set of principles. You seem to be obsessed with how the actual tools should work. You can repeat “Things can’t do GTD” over and over until you’re blue in the face. It doesn’t change the fact that for many in this thread, and thousands of others, Things is their chosen GTD tool.
As someone else already said, you should have titled your post ‘Things can’t do GTD for mark’.
Mark says
One of those principles is that you work from your next actions list. This isn’t a Mark-specific flavor of GTD I am proposing.
David Riggs says
Despite some of the strong comments about the title, I found this article helpful in deciding between OmniFocus and Things.
A useful phrase for me is ‘Begin with the end in mind’.
To do so, a sequential list with quick easy drag-drop ordering is a valuable organisational tool. Obviously not for every reader here – certainly for a number of us though (not just Mark).
I also appreciate hearing the issue about clear, context sensitive Next Actions.
I wanted the newer Things to win at this game (I love the Mac style simplicity & graphics) – but I’m not seeing any commitment from the developers to take these concerns on board.
So OmniFocus it is – for the time being.
Jon says
But Things does have a sequential list with drag-drop ordering. What mark is looking for is the ability to set dependencies.
Right now Things will show you the next item in sequence that is available in that context. His complaint was that it should have realized that buying the ring was dependent on calling the mother and hidden that item.
I noticed this right away too, but I see why they made the design choice. If you had full support for items to have multiple dependancies, then you might very well spend more time setting up your list than completing it… and that is what happened to me while using OmniFocus.
I now use Things because I can just skip any tasks that have a dependency I am waiting for. I would like to see support for single dependencies though (i.e. dependent on the thing directly before it).
All I can say is that it works better for me… though I tend to use it more for programming & design tasks than GTD on a day to day basis, so my needs may be different than yours.
Conrad says
What is so wrong about planning your projects upfront? I think it is the program’s responsibility, not mine, to suggest the next action for a given project to me upon completion of the previous action. Or notify me that there are no next actions defined for a project so that I could create one.
Or should I keep all my ideas and thoughts about a project in my head just because the program cannot distinguish between actionable items and not-yet-actionable items?
I agree with Mark in this discussion. Though I should say that Things is a very good application, definitely one of the best on the market.
Bowman says
Sure, but I found this great patch for Things called the human mind. It’s smart enough to know that that you have to dig some holes before you install a fence.
Don’t put your life on a computer.
snowbag says
This problem has been addressed in Things 1.3. See the link below:
http://culturedcode.com/things/blog/2010/03/things-1-3-brings-support-for-mixed-projects.html
Justin says
As a remedy to Mark’s problem….couldn’t you just add all the next actions from your various projects to the Today list. That way you could sort by context and only have the next actions available.
Chris says
But then your today list would be overloaded with all next actions, which is not what the today list is for.
As for the menu option for hiding next action steps, the iPhone version does not provide that facility, amongst other things.
Andy Chan says
The fact that it isn’t a GTD works well for the purpose of simply marking down different tasks. I don’t have Things yet, but when I do, I plan on using it to keep track of homework and such, because there isn’t a specific order to organize homework (unless you go by priority, of course). So there are both pros and cons with the app not being a GTD.
Andy says
I’m finally getting an iPhone to replace my first generation iPod Touch and, you know what, I still miss the clear, bloody wonderful Palm OS 5x (Garnet) task list application.
It set the gold standard for me as far as task control. (I’m avoiding calling it a task manager.) Even Blackberry’s built in task list is elegant when compared to the effectively useless Apple To Dos.
I’ve been looking for an iPhone/iPad replacement but none is as good. What kills me is also the price of Things in that you can’t buy it as a bundle. That it also doesn’t have a free-flow/got to do format is also an annoyance.
George says
With both Omnifocus and Things, I found I gravitated to Things. There are quite a few good conversations about Things usage in the cultured code user forums. For me, the key is “curated” use of of the Today category — with myself as the curator. I view the GTD workflow (to the extent I understand it 😉 as unnecessarily complex.
L.A. Nolan says
To solve that problem, I tag tasked “Waiting For” if I am waiting on someone to do something first… whether it is someone else or myself.
Linus Kendall says
A way around this problem is using the ‘Someday’ category. You could mark inactive tasks that are still waiting to be done as someday, thus keeping them in your system, but leaving them inactive and not shown in your next action list.
Another way I’ve tried is to use a separate tag, I use ‘waiting for’ for tasks that are waiting for somebody else to complete, and ‘dependent’ for tasks that are dependent on other tasks that I have to do. Problem with this approach though is that you have to do some processing when deciding on next action in the sense that you have to retag this dependent task with the right context – using Someday avoids that problem.
Christopher Papastefanou says
Thanks for an excellent analysis!
You are right in your argument, but I don’t see it as a flaw big enough to be called “Fail”, and I still find Things to be the best GTD app out there.
However, I hope that Cultured Code implements your suggested improvement.