My TODO List
Latest as of 2019-04-08
So since I wrote my initial explanation of the todo list system I'm using I've ended up putting the list into a Google Sheet. I kept pasting my txt file into sheets (one line per entry makes this simple) to do little things like “what are my grocery items” because I got tired of dealing with syncing the text file and adding to the PHP script to do various filtering, etc.
I am now implementing the system, below, using a Google Sheet. The various lists I want to consult are just “query()” function call on separate worksheets pulling entries from the main list. The query function also strips out the tags so when looking at groceries, every line item doesn't have “#groceries” on it. I also have an ad hoc query so I can enter a tag and it pulls them out. Custom formatting crosses out lines when prefixed with an X.
If I ever want to go back to text files, I can just copy/paste the lines from the main sheet. It is that simple.
As of 2019-02-07
I wanted to write about how I am currently doing “TODO List” right now because I change “my system” all the time. I don't have a system. I capture, review, and act. How I capture determines where I do reviews.
I have used apps, spreadsheets, paper lists and journals, Google Tasks, and everything in between. Special shouout to just using a stack of index cards. They are all fine. None of them will help you get anything more done than you want to do.
Having said that, here is how I am doing my thing as of today (for about a month now):
Text file called “todo.txt”.
- stored on my vps
- synched to my Android with Syncthing
- displayed on the web with some very basic PHP (more, below)
- Each line is a TODO
- Completed get “x ” at start of line
- The first date (e.g. 2019-02-08) is a “due date” of sorts (first, upcoming date)
- Any #tag is a tag on the project line (good for filter and sort)
- Capture – add a line to todo.txt. I have an IFTTT that calls a PHP script that adds on the file or I can just edit the text file on the VPS or Android. The format is very similar to TODO.txt (https://github.com/todotxt/todo.txt).
Review – start at the top and go to the end. “x ” off what is completed. If I act on something I “x” it off and move it to the end if it isn't completed (a copy). This is basically the Simple Scanning method or Long List method by Mark Forster with my own spin.
Acting – I actually try and “do” without reviewing the list. The list is a backup for my memory. I found with fiddly apps (e.g. Emacs org-mode) I was spending all my time “improving my system” or “moving things out my inbox”. Screw all that, it is a waste of time for me and just has the effect of squirreling away TODO items where I cannot see them (not great if you have a bad memory). Sure, the org-mode agenda will surface them. Then I can defer them! So helpful. :)
Projects and reference materials – I have folders in Google Drive (Sheets, scans, etc) and VPS (text files) where I have project documentation. These are not TODO list extensions. They are project plans and resources. I take notes there, log data there, etc.
On the go – I have a PHP web application that slices and dices my todo.txt file and displays it. This is a read-only view and allows me to focus in on one aspect of the list but I can't fiddle with it unless I edit the PHP code which is a separate activity and something I avoid doing! The views I have are:
The entire list including completed items – Grocery list (actually a file called “grocery.txt”) – I have another IFTTT that appends to this from my phone. – Upcoming – tasks with dates, sorted by date, ascending – Tags – each tag with the list of tasks below it (tasks in more than one tag will appear more than once) – TODO ASAP – I have a special tag #! that means “do ASAP” and this is just that list. This is what I keep in front of me.
That's pretty much how it works now.