Songs of Doom

Managing ‘todo’ lists - MaybeLater

March 21, 2008, 12:08 pm

A story about my new Todo/GTD list application, MaybeLater

About eighteen months ago, I came across David Allen’s “Getting Things Done”, with the bold tagline “How to Achieve Stress-free Productivity”. While this post isn’t supposed to be an advertisement for the book, I tried it and it worked for me. I’d just started a new job, and aware of how disorganised I’d been during my PhD, I wanted a system to make sure I made a good impression with my new colleagues (also, I was tired of forgetting things) - so I tried a few applications which aim to help with a GTD system, and settled on one. I used this almost religiously - every thought I had either gets entered straight into the application if I’m at work at my desk, or gets written on one of the pink sticky notes I keep in my pocket, and stuck in my wallet.

This has worked pretty well for me since then, and I like to think that I’m fairly organised at work, and all my tasks for when I’m at home, or away, also get entered into the system. The problem which has repeatedly presented itself is that the application lives on my machine at work, and I rarely have access to that when I’m not in the office - although my tasks were recorded, they weren’t available when I needed to complete them.

This brought me to the conclusion that I should use a remote application for managing my lists, and after a quick look around I didn’t find any that appealed to me (many very good looking applications were recommended to me which were closed systems, and I have a tendency to like running my own systems if I can).

Fortunately, I’ve been wanting an excuse to learn the Django web framework for a while, and so I set to work writing a new GTD app which does what I want it to do as simply as I could. The result is MaybeLater. I’ve spent an hour or two on this most nights for the last week, and yesterday morning it reached the stage where I had enough features implemented to allow me to switch from my old application to MaybeLater exclusively. It’s still reasonably raw and featureless, but it does the job for me.

Last night, my better half also started using it, and within 30 minutes or so, the bug tracker had its first two entries (I’ve since fixed one of them).

One thing I miss about the old application was the ability to quickly enter a new task without firing up my web browser, logging in etc. I’ve made it as easy as I could without much effort in the web interface so far (although I have plans for improving this), but my next task is going to be implementing an XMPP interface, so I can simply send a plain-text message to a bot in my roster and have it entered into my task inbox. It seems like a good excuse to roll out Nathan Fritz’s easy-to-use SleekXMPP library which I already use a lot when I work on the SleekBot XMPP groupchat bot.

It should be fun to see where this goes.

10 Responses to “Managing ‘todo’ lists - MaybeLater”

mike wrote on March 21, 2008

Loocks like tracks (try @ tracks.tra.in), but a XMPP interface would be superior :)

Kev wrote on March 21, 2008

Yep, I’d seen Tracks before, and it looks pretty nice (and mature, which is obviously more than can be said for MaybeLater at the moment), nice enough that I battled through the issues I had getting ruby/rails to work even (my fault I’m sure, rather than anyone else’s). In the end though, it didn’t quite work the way that I wanted to.

I’ve just started looking at the XMPP interface, which should be fun :)

Pedro Melo wrote on March 21, 2008

Give Hiveminder a try… They have:

* Web interface;
* IMAP interface (with offline IMAP support);
* SMTP interface (send mail to create tasks);
* XMPP interface;
* API with full access to your data;
* command line interface.

Also you are able to share tasks with other people, even if they don’t have a hiveminder account.

I believe that you won’t run out of options with it.

http://hiveminder.com/

best regards,

Pedro Melo wrote on March 21, 2008

Sorry, forgot something. A quick 15 minutes introduction, with audio:

http://www.slideshare.net/pjf/effective-procrastination-with-hiveminder

Best regards,

Misc wrote on March 22, 2008

Integration with django using directly the classes you have define is quite easy. I have created a small twisted jabber bot and getting info from django is so easy this is indecent.

Michiel Scholten wrote on March 23, 2008

You beat me to it :) I was planning on creating a similar application in Django for a while too, to get started in serious Python programming. I’ll follow MaybeLater with interest.

Kev wrote on March 23, 2008

@Pedro Melo: Hiveminder looks nice, but it wasn’t quite what I wanted (and it’s yet another webservice, and I fancied having something I could fiddle with the source of in my own deployment). I’m not really looking for options - I’m looking for the smallest possible setup which lets me Get Things Done :)

@Misc: yes, I coded up Jabber support soon after writing this post - I can now message a bot to have tasks dropped into my inbox, no questions asked. I’ll probably add some syntax to allow me to shorthand a context and project into the message at some point.

@Michiel Scholten: If you wanted to have a look at it, the MaybeLater source is still pretty trivial, and if you want an excuse to learn Django, join in - there’s still some things I’d like to do with it. :)

sandlex wrote on April 9, 2008

Hi. Some time ago I had a experiment on tracking my daily work-related activity by writing out tasks I do and calculating some results. I wrote here http://sandlex.blogspot.com/2008/01/thoughts-about-time-logging.html about it. It was very difficult to write all these things in text files and I even decided to write tracking application. I made a prototype and after analysis it was clear that this kind of application is not handy. The best solution came to my mind was to write a bot for Twitter whom I’ll send short messages like: start writing design, stop writing design. And bot will automatically process such messages, build a chains of these tasks taking into account timestamps when it got messages and through the special interface show me some tables, diagrams describing how productive I was. The problem is I have no idea how to write bots for twitter so I gave up this idea. Maybe you can write something like this based on jabber-protocol? Extend the functionality you’ve planned to do by adding some analytic features.

Kev wrote on April 16, 2008

Something like that could be moderately easily done with a similar setup, yes.
I’m not sure that it’s in scope for maybelater though, and I have enough on my plate without starting a new project, I’m afraid.

I’d be happy to talk you through it though, if you want to get coding :)

jaydee77 wrote on April 25, 2008

At last Django-powered GTD service!
Very good news!

Care to comment?

Bad Behavior has blocked 880 access attempts in the last 7 days.