Sunday, March 20, 2016

Cool Tool - Todoist

Back after a long hiatus. The hiatus was not because I wasn't doing lots of interesting things it was because I hadn't figured out how to balance all the interesting things I was doing. Which brings me to the 1st tool that I have blogged about in a long time.

I do a lot each day and I have the memory of a sieve. If I don't record something the minute it occurs to me or I promise to do it the odds are very good that I will not remember it at all. My iPad is my prosthetic memory and everything I have has to sync with my calendars and my task lists so that what I need is accessible everywhere. 

For years now I've been using ToodleDo. I have generally been happy with it. It's biggest strength was that it had tasks, outlines, and notes. And the tasks portion of it could handle tasks within tasks in a limited way.

And since I am a Java programmer the fact that they had a REST API was useful. The API documentation was a pain in the posterior because the documentation, like many REST APIs' documentation, didn't quite come from nothing. But once I figured out how to get programmatic access to my task lists, it made many things relatively smooth.

The ToodleDo web application is solid and I used Pocket Informant to sync up with TooldeDo (including the notes) and that was effective and reliable.

The 2 downsides to ToodleDo that have been gnawing at me:

1. There is only one level of tasks within tasks. So I tended to use the top level tasks as projects and the tasks below that as the actions. But that didn't really cleanly sync up with Pocket Informant.
2. Capturing information or actions or tasks was not fast. It was acceptable but it wasn't fast. And once a single task was entered in the iPad application, I had to go through the same sequence again to enter the next task. So for inserting many tasks I end up using imports via CSV. Very usable from the computer, less so from the iPad.

And things probably would've stayed that way except for one other thing: I lead courses that require generating and tracking many activities over 3 1/2 to 5 months at a time. So I have checklists for pairing and executing the course that I revise based on what worked and didn't work in the last course.

Some of the checklists are required for predictable events that occur in a certain date such as a particular classroom. Some of the checklists are required for repeating events such as when a new coach comes on the team or if someone drops out of the course. 

I've led 12 of these courses since 2008 and this time my mind balked at again hand editing all of the elements I needed to import into ToodleDo so I ended up reevaluating a number of the online task managers I had reviewed years before as well as a bunch of new ones.

Enter Todoist.

Todoist has the concept of projects and within projects you can  have tasks that have up to 4 levels of tasks embedded in them. And, their iPhone and android apps allow for rapid and repeated capture of tasks.

An example: 




The left-hand side entry with the red arrow that says "April 2016 SELP" is a project and within that project is a task called "Eval SELP Tech". And within that on the right-hand side is a task called Spreadsheet with a series of tasks below it dealing with Google App Script or GAS.

In the iPad application, if I want to add a task I need only click the blue '+' at the bottom and start entering. 

The Todoist application has 2 features that make it very easy to enter tasks in sequence. The 1st is that it will enter any new task at the same level that you entered the last task. The 2nd is that if you enter any time reference it will use that as the due date of the task.

For example:




The blue arrow indicates where you are doing the task entry and the red arrow indicates a portion of the UI you can use your finger on to indent the task or move it out. And once you enter the task if you use a term such as tomorrow or next week it will highlight that and use that as the due date for the task as below:



Lastly, both the iPad and web apps have decent performance. I have over 3000 tasks and actions in this one project that I have not seen any performance degradation.

My next few posts will probably deal with using the Todoist REST API, from Java and from within
Google App Script.