I was also growing more accustomed and comfortable with the terminal and the UNIX philosophy.
So I started exploring the CLI task managers and found [taskwarrior] - it seemed the perfect tool at first glance, with great customizability and control. But it too turned out to have some fundamental flaws.
I believe I first heard CGP Grey using this term, but I have not found it anywhere on the Internet with this meaning.
Trusting a digital tool, such as a task manager, means you rely on it. If you don't trust a tool, you will use it less and tend towards alternatives e.g. pen and paper.
To build trust with a task manager, you need to put all your tasks in it and set it up in a way that fits your workflow.
For that, a task management system needs to enable these three actions:
- quickly capture new information
- planning & reviewing
- retrieving tasks that should be done and can be done in the current context
Even though they won't be clearly distinguished by a single property, they will be mapped through some default properties:
- Inspired by [tasklite](https://tasklite.org/concepts.html), habits have a `repeat` property while chores have a `recur` property - both can be frozen.
- Tasks and activities may be distinguished by a `size` property, where activities have a special size value of `-`, marking them incompletable. Alternatively, activities may be prefixed with a star as it is done in Todoist
These basic types also incorporate other types:
- an area is simply an activity with subtasks
- a project is a task with subtasks
Since "task" is one of these types, entities of any of these types can be called "items" within the implementation to avoid confusion.
- Find things I can do when I am (outside watching the babies e.g. cut nails | focused, wanting to do some (writing|programming) in the morning | unfocused in the afternoon e.g. check mails | taking a break from work on the computer e.g. do laundry | eating/snacking something e.g. watch a video/read a paper | listening to an audiobook e.g. digging, hang out the laundry)
I have been using [taskwarrior] for a few weeks now, but I am already starting to lose trust again. I don't work on most of the tasks I've entered, and if I do, I rarely remember checking them off.
- A big issue holding me back is a missing notion of subtasks. You either have to use projects, dependencies or create a complete custom hack - either a script or hook. This also makes entering tasks more verbose as I have to specify multiple tags repeatedly which could otherwise simply be inherited.
- Recurrence is a longstanding issue, but can somewhat be solved by plugins: https://github.com/tbabej/task.shift-recurrence and https://github.com/JensErat/task-relative-recur
- UDAs have a lot less options than inbuilt properties
- CLI can be too verbose: I am missing some way to set shorthands for attributes, e.g. "p" for project, dates are rather inflexible
- Keeping all reports aligned with custom attributes is a hassle, since you can't base reports off each other