23 Jan 2005

Ta-da lists

Partly because of my own project, Tracks, I'm interested in seeing how other people implement todo type lists. So I signed up for a Ta-da list to see how they were doing it. I was pretty impressed. It's intended to be a fairly simple system to tempt people into signing up for a full Basecamp account, so there are no categories, due dates or anything like that. However, they do have some really neat ideas.

Much of the interface is implemented using XML-HTTP Request and Javascript, so that the whole page doesn't have to be refreshed for each change. Actions like adding an item and checking an item off as completed appear to happen nearly instantaneously. They also have a nice visual indicator of how many items a list contains on the overview page; each list has a blob icon next to it, and the size is proportional to the number of uncompleted items. You can share selected lists publicly, subscribe to an RSS feed or get the contents of lists emailed to you. It's all pretty nice — simple in the good sense of elegant and sufficient.

One thing it and Flickr showcase is the power of XML-HTTP Request to narrow the usability gap between ordinary applications and web-based applications. I'm going to look into the documentation for it to see if I could use XML-HTTP in Tracks.

  1. 1

    Take a look at their source. Basically you want to look at /javascript/lists.js. From the todo list page they call add_item with the text they want to add to the list. That's it! add_item itself constructs a URL to make an HTTP GET to (which is just an action list /todo/additem or something similar.. with ?list=1234&content=whatever at the end. They then have a very basic XMLHTTPRequest function to handle the different browser implementations.. and bam, it all works. I first got into XMLHTTPRequest about 9 months ago and people seemed to think it was brain science. But take a look at the code they're using at TadaList and you'll see how simple it really is to rig together. I think it'd suit Tracks down to the ground. Also, a few of us in the RubyOnRails IRC channel were talking about making a basic open source library to make these calls a lot easier for Railsers to use.----- An aside - for some reason Ta-Da and Flickr occasionally (once a fortnight??) hang my browser (Firefox). Not sure if it's coincidence or coding.

    by Gordon @ 24/01/2005 12:01 pm • Permalink

  • 2

    related-ish: http://www.marktaw.com/blog/CascadingNextActions.html a feature of LifeBalance but apparently not part of GTD so you might like to read it

    by Saltation @ 24/01/2005 10:01 pm • Permalink

  • 3

    Peter Cooper: I've already taken a peek wink. It does look fairly simple in principle (and the XML-HTTP Request page I linked to also has some simple examples). I think that I need to think about how it could be best used in Tracks (rather than just indiscriminately plastering it everywhere, which is always my tendency when I find some shiny new thing—see drop shadows on this site grin ). Gordon: I used to have terrible trouble with Flickr and OmniWeb, but it seems to have improved with the latest version of OW.

    by bsag @ 24/01/2005 10:01 pm • Permalink

  • 4

    Saltation: Interesting. I'm sort of already doing something similar with Tracks, because if a next action is part of a project, it displays a [P] link which takes you to the project. I've also set the title to the title of the project, so you can hover over the link to see what the next action relates to. -----

    by bsag @ 25/01/2005 7:01 pm • Permalink