Todoist, my new productivity tool

Over the few months, I have been happy with org-mode, combining an incredible flexibility with the reliability of a plain text file in a Source Control System, and with the raw power of Emacs under the hood. Still, I am moving away, at least for a while. My main issues with org are:

  • Limited functionality of MobileOrg: this is by far the main reason why I started looking for alternatives. Unfortunately at the moment I do not have the time to contribute to the project, and the tool is limited. On top of that, you need Emacs running somewhere for the sync to happen. The iOS workflows that I posted in the previous posts rely on a working network connection, and I found them not completely reliable.
  • No notifications: this is not a deal breaker for me, as I spend enough time in the tool, but time and location based notifications are handy.
  • Complexity of the configuration: elisp is a powerful language, Emacs allows you to customize absolutely everything, but when you start to use org on a bunch of machines, requiring different configurations, and you end up having to use git to synchronize them (see theses old posts to understand why I had to do that), it can become tricky to get the config right;
  • Agenda views are static, and it can be a lot of work to set up the perfect views for your workflow.

I still miss OmniFocus sometimes (less and less to be honest), but I need more and more a Windows compatible tool, as at work I am stuck on a Windows machine. So, I decided to have a quick look at the evolution of the various platforms since last time I looked at them. I decided to do this exercise with an open mind, and try tools which I previously discarded for lack of what I used to consider basic functionality (i.e. start dates). Mostly, I played with Asana, Toodledo, and Todoist. I also found a couple of interesting new tools, based on Evernote, but I do not want to pollute my Evernote account with hundreds of to-do items.

Asana is free unless you have a big team, and both Toodledo and Todoist have a free version and offer you a trial for their respective premium versions (similarly priced). Toodledo gives you two weeks, while Todoist gives you an entire month. This is a great policy in my opinion. Two weeks are just right to get your hands dirty on a similar tool, and one month is perfect. To be fair I could not find the free trial option on the Todoist's website, but I received an invitation shortly after creating an account.

As you can guess from the title of this post, my preference has fallen on Todoist. The tool is not perfect, but what I particularly like is the low friction, at least in my workflow. It does everything I need, it does not get in my way, and the adaptation time was short. Before getting into the details of Todoist, I'll quickly explain why I ruled out Asana and Toodledo.

Asana

asanaThis platform has been greatly improved since last time I used it, especially the iOS app is great. This said, I am still annoyed by the web interface; I can't exactly explain why, I just can't get along with it. It might simply be that I have not spent sufficient time with it. The real deal-breaker for me is the lack of an interface with Microsoft Outlook: at work I have to use Outlook, and there is no simple way to create a task from an email. It is possible to forward emails to a specific Asana address, but that's cumbersome, and poses security issues: I can't simply forward emails, potentially including confidential attachments, to an external service (and I don't have the time to scrub the messages before sending them either).

Toodledo

toodledoThis platform is powerful, but it has a couple of strange limitations, and the worst web interface of them all… Toodledo is highly customizable, but some basic GTD concepts are difficult to implement. As an example, there is no concept of "Project". You have folders, you even have goals, but simply no projects. There are various ways to work around this limitation, but that's just more friction, which is the worst problem in these tools. This said, I could have lived with this limitation; the main issues I had with Toodledo are the unreliability of the web interface, and the clunky sync: I played with it for several days, and it has consistently been slow. Slowness can be acceptable, but whenever I edited several tasks I ended up having 5 or 6 being updated at the same time, and then I got a generic error saying that the operation could not be completed: that's bad, because I don't want to have to remember and check everything I just did… This happened several times; it might have been a transient problem (several days long), or an issue with my region, but that's a major problem for me. Also, I ended up "losing" tasks, and using the tool to look for them rather than being reminded of them; this might be due to the learning curve, but it's not a good start. This is a shame, because Toodledo can be synced with Outlook tasks (using gSyncit, a tool that I have been using successfully for some time to sync other data), and provides an open sync API, which gives you the freedom to use various apps to manage your tasks.

Todoist

todoistLet's come back to my tool of choice. Todoist has a modern design, and just the features I need without too much fuss. The tool runs on pretty much every platform (although, to be fair, most of their "apps" are just web views: this is fine for me, since the web view in question is very well designed, and allows the developers to update most platforms at the same time and more frequently), and the Outlook plugin is great: with one button I have a task from an email, without any sensitive content. The task only contains the Outlook ID of the message, as a link, so I can open the original email with a click. The task name can be customized, so you are not limited to the email's subject.

Another big selling point for Todoist is the speed and reliability of the sync. It just happens, and I do not even need to know that it exists. It works, and my tasks are instantly on all my devices. And finally, a nice touch is the badge on the app icon on iOS, which is updated even if you don't open the app (this may seem trivial, but almost no other todo app gets it right).

In terms of functionality, this is what I like:

  • Inbox implemented right: Nothing special, but new tasks go there when you are not in a project, which is all I need.
  • Projects and sub-projects: I thought this was a given for this type of tool, but clearly it is not (Toodledo, I'm looking at you…) so I'm glad Todoist offers it. For some strange reason, Todoist developers did not think filtering by projects was important, but luckily their users have requested this feature and it is now available in all web view based apps (though not documented yet). To filter by project you need to add "p:project_name" in your query. Also, filtering on a parent project does include sub-projects, which is good.
  • Customizable filters: This is common, but Todoist goes one step further and syncs your filters across devices, which is great.
  • Recurring tasks from completion date (and not only from due date): the syntax is weird, but the feature is there.
  • Multiple reminders: You can set an arbitrary number of reminders for a task, both location-based and time-based. This is useful, and it compensates the lack of a "Start Date", at least in my workflow. Also, being able to set location-based reminders on a computer, and getting the notification on the phone, is neat.

Todoist is not perfect though, these are the main problems for me:

  • Natural language implemented wrongly: Todoist allegedly allows you to express dates using natural language, but in reality the syntax is strict. Examples: 10am is not accepted, only "today at 10am" is; "every Mon and Wed" is wrong, you must use "every Mon, Wed”; worst of all, “oct 21” is not valid, you have to use “21 oct". This is not a major issue, I can get used to the syntax, but I hope the parser will improve overtime.
  • Non-standard keyboard shortcuts: the most annoying one being SHIFT-Enter to create a task below the current one, while in every other system SHIFT-Enter creates an item above the current one. In Todoist, CTRL-Enter creates a task above the current one.
  • Sub-projects and sub-tasks are poorly implemented: The functionality is there, but the interface is not. Creating a subtask is counter-intuitive, while it should be handled through drag & drop (OmniFocus gets this perfectly right). Also, there seem to be limitations in the data-model, as sub-items are just a matter of indentation and have no real link to the parent. As an example, once you archive a sub-project, no links are maintained to its former parent.
  • Project based filters still not available on iOS, but I expect this to be fixed soon, given that it works on all web-based clients (web app, Mac, Windows, and Outlook for sure).

There is another feature unique to Todoist worth mentioning: productivity analysis (with karma points). I haven't played with it much yet, don't know if I like it or will use it, but it can be disabled and it does no harm anyway. Might be good for motivation.

Anyway, after a couple of weeks I am mostly happy with Todoist. I managed to migrate all my org-mode files and I'm pleased to report that the tool has little overhead: I spend little time setting up Todoist, my time goes into getting things done. As soon as my complimentary Premium period ends, I will definitely switch to a paid account.