As mentioned in my previous posts, I chose Cultured Code’s Things as my GTD tool. The Mac / iPhone combination makes it really versatile and after about a month of using it, I’m still loving it. Therer are, however, a bunch of improvements required for Things to become truly great. These are the 5 features I consider “must have”s. Everything else would just be “nice to have”s to me as of writing.
I proposed these features directly to Cultured Code. Since I want to share the ideas with you and maybe even get some reader feedback (a man can dream, can’t he?), here’s a copy of the eMails I sent to them (most important first).
1. Embedding files into the Things database
One of Things’ (and in fact GTD’s) most important principles is to get stuff out of your brain into the tool as quick and easy as possible. That is, including any available notes and data required to actually perform the task. Things implements this by enabling the user to add notes to a To-Do item as well as links to Files, Websites or eMails. While this is not bad, it has one major limitation: you can’t delete the original data as long as the Task is not done.
Let me explain this. Let’s say I get an eMail from my boss telling me if one day I have the time to update our web-site’s Design, I should have a look at the attached PDF for a color scheme inspiration. Since I have lots of other, more important things to do now, I file this under Area “Work” in Focus “Someday”. In order not to forget the boss’s colors, I drag his eMail onto the task and Things adds a link to it. The problem is that I’ll have to keep the eMail in my inbox for as long as the task isn’t complete (which could be very long for “someday” tasks)! This is the same for files, in which case I’ll have to keep them on my Hard Disk even if I don’t need them outside of the task they belong to. If I get more tasks matching that use case, I’ll end up collecting eMails and files that are only loosely coupled to Things tasks, resulting in cluttered mailbox, desktop and/or hard drive. Furthermore, I’ll have to crawl these “external notes”, and by that I mean the eMails and Files linked to from Things’ tasks, regularly to be sure not to keep them forever, even when the task is done. Finally, I try to use the zero inbox pattern as much as I can and not being able to fully include an eMail or file into my GTD application is truly a blocker!
I’m not saying you should _replace_ the linking with embedding. There are scenarios for both so the user should have the option. Maybe by using modifier keys while dragging a file onto a Task (like the Finder does it). In fact, I know that embedding files into the Things database won’t be easy as you’re using XML storage for now and that it will impact iPhone syncing, but to me the benefit would be worth it!
2. Specifying a time wherever you can specify a date
Things’ “focus” sections are really well thought through. I found them to be a huge advantage in my way of organizing tasks. The ability to specify a “start” date using the “Scheduled” focus, as well as the ability to specify a due date on each task allow for great flexibility and expressiveness. This is especially true when you work on a day granularity. Where it starts to become inflexible, however, is when your granularity gets finer than the day level.
For example, let’s say I have a choir rehearsal on Sunday noontime. I may want to add a task that I can only perform once that rehearsal is over (maybe I’m missing some information I’ll be given at the rehearsal). There is currently no way of telling Things to Schedule a task for a given time (in this case, next Sunday afternoon at 2:00 PM). Using Things’ current day granularity:
- On one hand, If I schedule it for Sunday, it’ll show up all Sunday morning, cluttering the other tasks I may have to perform before the rehearsal.
- On the other hand, if I schedule it for Monday, I may not manage my Sunday evening (where the task would have been performed best) optimal enough because that task was out of focus.
The same applies to due dates. Being able to optionally add a time wherever one can specify a date would be a welcome improvement.
3. Improving the navigation on Things Touch by making tag filters more global.
As far as I’ve seen, I think it’s common practice for Things users to add a root tag “@” with child tags denoting what GTD describes as “contexts”. In my opinion, Things’ tags are indeed the way to go for contexts.
It turns out for me that contexts (and thus tags) play a bigger role when using Things Touch then when using Things Mac. In fact, I tend to use the comfort of the desktop to file tasks from the inbox so it’s OK for the desktop to give me an overview of all tags/contexts. I only start to use the tag filter, if at all, when I actually want to perform tasks. Furthermore, the contexts of my desktop computer always stay the same so selecting its contexts “@Home @Internet @Phone” is a no-brainer (this might me different for notebooks, though).
Per contra, the Things Touch usage pattern is slightly different. Whenever I need to use my iPhone’s Things Touch, it means that I don’t have access to, or at least that I’m not in front of, my desktop mac. Even though it is possible to file tasks with Things Touch, I don’t think it is its foremost use case. To me, the main use cases for Things Touch are:
- Dumping a task into the inbox
- Using contexts to see what tasks are available for the current context (since the iPod Touch / iPhone is inherently mobile, contexts vary a lot throughout Things Touch usage).
While dumping tasks into it is really well done (in fact, there is a “+” in the bottom left corner on about every page of the Things Touch app), the latter isn’t as easy as it should be. In order to filter tasks by tag, one has to first select a focus. Inside a focus, there’s the ability to filter by tag. Leaving, let’s say, “Today” and navigating to “Next” loses the selected tag filter, so one must select the tag over and over again, rendering the feature almost useless.
My suggestions would be:
- Add the tag filter button to the Things Touch main screen. That way, the user can immediately select his contexts upon opening the app.
- Remember the selected tag filters throughout the navigation. They’re displayed at the top of every page anyway, so they’re quickly disabled if the user desires to.
I know you’re working on bringing Areas to Things Touch. Although it’s clear that Things’ Areas of responsibility and GTD’s contexts are really different concepts, the same global filtering approach as described for tags would be nice for areas as well.
4. Making filtering by tags more flexible
As discussed in this forum thread, I’d like to suggest the ability of filtering tasks by tags in a more flexible way in Things for Mac:
Currently, when one selects two or more tags, Things always interprets the selection as “Tasks having Tag1 AND Tag2”. It would be great if, using the modifier keys, one could select tags using a semantic like “Tasks having Tag1 OR Tag2”. That would improve Things’ usefulness when using tags as GTD contexts: Having an internet connection at home, one could select “@Home OR @Internet” when he’s at home to see all feasible tasks and chose the most relevant (currently, he’d have to cycle through all applicable tags/contexts).
Being at it, it would also be useful to explicitly exclude tasks having a given tag like “Tasks having Tag1 BUT NOT Tag2”.
5. Adding a quick preview of due tasks to the dock icon’s context menu
I love Things’ option to display the number of due and “Today” tasks within a badge in the Things dock icon. This and what I’m about to describe is especially useful when Things’ main window isn’t displayed (in the matter of a “quick preview” without the need to open the full window).
A small but welcome improvement to the dock icon would be adding the list of tasks making up the number in the badge, in the context menu that appears when one Control-Clicks (or right-clicks) the Things dock icon. Apple uses this for the iTunes dock icon, which displays all kinds of information in its context menu. Things could display all tasks, taken into account for calculating the badge’s number, with the ability to click on them to open the Things main window and select / open the klicked task.
As of writing, I haven’t received any reactions from Cultured Code, which is indeed normal behavior for feature requests. I’ll report back when any of this features gets implemented, but since there haven’t been any software updates to Things so far, nothing to report here.