Several years ago I was looking for an easy-to-use todo list manager. There are tons of apps and websites that tackle todo lists. All of these suck in various ways. Websites are only useful if you’re online. Not all websites work great on mobile devices. Desktop apps don’t always have mobile client counterparts. Apps use proprietary file formats, making it hard to switch from one solution to another over time. Many apps stuff in a bunch of functionality I’ll never use or actively don’t want.
I spent a long time looking for a solution. I eyeballed todo.txt, and was initially very excited by it. Plaintext. Command-line friendly. I was a Dropbox user at the time, so that was an easy way to synchronize my todo list between devices. But todo.txt wasn’t easy to use on a mobile device. It lacked a mobile client at the time. I toyed with exporting my list to a web page for review, or just suffering through without mobile.
I eventually did settle on todo.txt, and used it pretty reliably for about a year. I did without it on my phone. Then I stopped using Dropbox. I kept my todo.txt, but only used it on a single device. Eventually I used this less and less, until I stopped tracking my todos at all.
I was never a heavy todo list maker, so my productivity didn’t diminish noticeably. But I did find myself yearning to jot down things to do so that I wouldn’t forget them. This set me back on the search for a todo solution.
There is now an official todo.txt Android client, but it uses Dropbox for file synchronization. I’m no longer a Dropbox user, so that’s not particularly helpful.
I recently discovered Syncthing. The Syncthing mobile client made it supremely easy for me to get my todo.txt file onto my phone in any location I wanted it. Then I found Simpletask Cloudless, a todo.txt compatible task manager with no built-in sync solution. By pointing Simpletask at my Syncthing-synchronized todo.txt, I now have full access to my todo list on my phone, and my computers.
I can’t recommend todo.txt enough. I almost always have a terminal window open on whatever computer I’m using, so my todo list is only two keystrokes away: t<enter>. Adding new items is frictionless, so I can be sure to record tasks as they come to me. It’s easy to apply contexts (home, work, etc) and projects. I can always directly view or edit the todo.txt file itself if I need to make massive changes, or forget the script’s command interface for lesser-used activities.
Simpletask is a great addition to my workflow. It’s as easy to use as todo.txt itself. Since I don’t want Syncthing running all the time, I simply launch Syncthing, and then launch Simpletask. Simpletask pays attention to changes to the files, so I don’t need to wait for Syncthing to finish synchronizing: Simpletask will update my todo list when any sync changes are applied. When I’m done, I can close Simpletask, then wait a minute or two to ensure that the changes have been picked up by my other Syncthing clients. Then I can exit Syncthing and go about my life.
It seems rare in this day to find such easy-to-use tools. No clutter, lots of flexibility, cross-platform, and a real focus on the human being using them.