The problem with this kind of ad-hoc TODO lists is integration. They are alright as long as you don't try anything fancy but this is inevitably going to happen as soon as something gathers more users. And suddenly you hit a wall in terms of integration and extensibility in most environments. How do I tie in a simple link? Oh, we need links to eMails/files as well. Someone needs more than one kind of TODO. Hierarchical TODOs would be nice. TODO dependencies. Exporters. The list of possible features is endless and every system that does not keep that in mind and plans for it is doomed to fail or only usable for a very small user base, which is fine if that's your goal.
If that is all you require, it is perfectly alright. All the features I mentioned are not part of some product managment software but of the usual personal productivity suites.
Seconding taskwarrior for being a great todo handler. It has a minimalistic interface, but doesn't lack any features that you (might) find yourself wanting after a while of use. The IRC channel (#taskwarrior on Freenode) is active too. The command-line tools are perfect and let you make your system as minimal or as complex as you want. Over time, I've:
1) Set up a cron job that pumps my current list out to a text file behind an .htaccess'd directory. This way, I can see my list without needing SSH access.
2) I've also got a little Dashboard widget that pulls that text down, so I can swipe to the top-left hot corner and see them at a glance.
3) I'm using Alfred (http://www.alfredapp.com/) on my Mac, so I wrote a simple trigger called "task add" that connects to my box and adds it there. There's also a few posts out there for DropBox integration if you use that.
4) I didn't write this, but if you use oh-my-zsh, there's a plugin for Taskwarrior. I've learned about a couple options by pressing tab.
A bit late, but I'm also a huge fan of Taskwarrior- and on a slightly related note, I wrote the oh-my-zsh plugin and was always a bit curious as to whether anyone actually used it. Glad to hear that at least one other person finds it useful.
I do find myself using Taskwarrior's shell mode[1] almost exclusively these days though, as it significantly cuts down on the number of keystrokes necessary to interact with my todo list. If you wrap task shell in rlwrap[2] you can still get autocompletion from within the shell.
[1] `task shell`
[2] I use 'ts' aliased to `rlwrap -i -r -C task task shell` for this
The irony of this is that if I'm busy enough to write todos I never ever see my desktop anyway. I switch around between open windows, why would I take the time to check the desktop?
A big yellow old-fashioned post-it will work better. Not everything is better in digital form.
My solution to this problem was to print the todo file whenever a terminal is opened using .bashrc. It works much better as I see the terminal more often than the desktop.
TODO lists are seen to be useful, in their basic forms they are easy to program (easy to store, manipulate and display), and they are amenable to much personalisation and tweaking (desktop! web! mobile sync! embeddable widget!).
But, I wonder if they are an example of H.L. Mencken's quote "For every complex problem, there is a solution that is simple, neat, and wrong."
For evidence supporting this, look how often they are reinvented and abandoned.
Problems such as ongoing tasks with no quick or clear resolution, teamwork, not having the todo list with you, putting it somewhere you can't quickly see, putting pages of things on it, wanting to separate personal tasks and work tasks (and more), wanting geo-tagged tasks, temptation to push it towards being a life management system, a calendar, a project manager, a timesheet system, a reminder system, and a 'what have I accomplished audit'.
What alternatives to TODOs are there? I mean, odd, curious, niche alternatives that we might not have heard of?
I used to use paper todo lists until I discovered Calcurse (http://www.calcurse.org). I use a detailed and feature-rich Conky rc on both my desktop and laptop and love it, but the appointment and calendar interface that Calcurse adds is indispensable compared to a simple list.
I've been using a similarly minimal system for about 10 months now. One feature I really can't do without is the ability to save completed tasks and the time they were marked done. I find it very handy to look back over the past week or so at the todo items I marked off, or even within a single day.
Don't forget about Gina Trapani's TodoTxt apps and script at http://todotxt.com/.
I have used my own system since 2007 or so. It amounts to a sortable list of delineated values where different lines are tagged for tasks, projects, etc. I posted it at http://www.texttodo.org