WAT
As of 2003-11-15, I don't use WAT myself anymore. This isn't because WAT is broken, but because I'm experimenting with other approaches. The code has been stable for a while now, but don't expect any improvements or extensions. Unless of course you write them and send them to me!
I've always used a simple text file to keep a grip on all the things I have to do - which may explain why I fail to do any of them. WAT is a little Perl program that can bi-laterally sync a todo text file with a Palm.I was prompted to write it by the imminent arrival of Vim 6.0, which introduces outliner-style folding. I have to store a wee bit of state in the text file for syncing to work well, and folding lets me hide that data. It also means that I can put the notes that can be attached to Palm todo items into the text file without cluttering up the display.
Here's a couple of screenshots to show you what I mean. Here's how the text file looks:
3 Lunch with Z %12619791 2 Phone Tom Dolan %12619995 2 Fix button/zip on trousers %12619981 2 Finish zoom proqram Maybe have scaling? %12619906 2 Customising Mozilla %12620020 2 Tea with Peterme %12620018 2 Call Trevor Parsons @ linux user %12620017 2 Call Gill %12619961 2 Complete list of owned domains, and consolidate them NTK Domains ntk.net spesh.com kevinwarwick.org.uk everybodyhatesattachments.com One off jokes teonline.co.uk Future Projects spoolfeed.com spoolfeed.org actuallyworks.com oblomovka.com %12619979 2 set up and pln actuallyworks.com
Here's how it looks when folded under Vim 6:

Some of these items (shown in orange) have been unfolded - showing the state
data (those %numbers), and the note attached to them. The rest have been
folded up, including the domain list entry, which has its detailed note
hidden.
Download
WAT is now up to version
Warning: readlink() [function.readlink]: Invalid argument in /home/danny/web/oblomovka/code/wat.php3 on line 121
. Here's where you can get it:
wat.vim - the Vim 6.x syntax file
README - how to get it to work
wat.tar.gz - all the above, tarred
You'll need the pilot-link Unix
Palm utility, and the PDA::Pilot Perl module, which should come with
it.