I started this text as a reply in this thread, but moved it out in order not to not stray away too much from OP’s original question.
These are a few reflections on Recurring Tasks after using Things as my to do manager (for pretty much as long as it existed, from v1 to v3). It’s opinionated design can be controversial, but I must say I really enjoy it.
This post was originally a reply to that post:
It is interesting that the answer to this question lies deep into how Things developers conceptualize the flow, so I guess its a good read to anyone who uses Things or may be considering to do so.
Without further ado, let’s get into it.
Concepts: start, intend and due dates are different things
There’s some separation between start and due dates that need to be initially clarified:
-
Start dates: are When you can start to work on a Task (i.e. when it should be available for you to work on it), it assumes you can’t even start working on the task before this;
- It is not the day you intend to work on this task. That will be decided by you only on the day the task becomes available, in your Daily Review process (this is crucial).
-
Due dates: are the very last day you can work on a Task. Harm will be done if you don’t deliver by that date.
In Things, when people complain they can’t mark items done in advance, I guess they’re referring to these looping items that will show up in either Area/Projects or Upcoming view:
I use to be one of those people, but then I realized the diference for start, intend to and due dates and how Things interface implement them (it could be better in their wording, no discussion on this, but I find the flow is kinda great, I must confess).
The flow on Things for recurring tasks is:
- Set the Start Date to be the date a task becomes available for you to decide if you want to work on it or not (on your Daily Review, see 3 bellow);
- Set a Due Date if and only if the task requires one (ie. if something will go wrong should this not get done by that date);
- Everyday on your Today view you’ll have a list of all the to dos that have been:
- Scheduled for that date;
- Are Due on that date;
- Newly available ones ←
Here are where your Recurring items will initially appear
- Unfinished items from yesterday
When first opening your Today view on a given day, new items will have a yellow dot on their lefthand. That’s to signal they’re new and need reviewing. In this Daily Review you should look into each one and decide wether:
a. I’ll work on it Today (and just leave it into the Today view);
b. I’m not sure when I intend to work on this, but want to get it done soon (so you hit “clear” on the start date for it to move to the Anytime list); or
c. Decide to start working on this task by another time I already know when (so you Schedule it to that given time and it will move to the Upcoming so it will not clog your other main lists)
d. I guess I’ll not be doing this for a While (then you’ll move it to the Someday list).
Checking on Things interface for these concepts
There are a few assumptions on their interface for a recurring task:
- Tasks will always have a start date;
- Tasks will not have a deadline until specified otherwise;
- If not specified otherwise, a task with a deadline can’t be started before it is due.
That said, let’s have a look at how Things allow for the creation of a repeating task.
Default repeating item screen: you’re actually defining task’s initial avaliability
This is it’s default repeating to do screen screen:
By default, the task will not have a deadline, only a start date. So you’ll be defining when that task will be available.
So Scheduling a task with no Due dates, means you’re defining it’s Initial avaliability on your list. And nothing more. So this is not when you intend to work on it, as can only decide that after the task is available and will show up in your Daily Review.
When adding a deadline: you’re defining task’s deadline
If you click on the “Add deadline” (see above), then it will ask for a number or days to start a task before it is due:
Pay attention to the “start 0 days earlier”. That will define the initial availability of the task. Before that, Things will consider you can’t even work on it and then, will not show it as something you can work on. (That’s actually the Genius of it for me as it allow for a very streamlined list of tasks that I can actually work on.)
By default, since tasks aways need a start date, it will be considered to be the same of the Due Date (Start = Due), meaning it won’t be available for you to check it off before that.
However, if you enter any number of days in that checklist (say 6), it will be considered available X days before the Due Date and will surface on your Daily Review by that time. Then you can decide to do it or to Reschedule it.
Summing up the assumptions on the Recurring tasks interface
So the key is to keep in mind these assumptions when scheduling in Things:
- If the task has no Due Date, then I need to schedule for the desired Start date (it won’t be ready for marking it done because I’ve told Things I can’t even start working on that task);
- If the task has a Due Date, then I need to also figure out when can I start working on it, and and adjust the “start X days earlier” dialog to reflect this;
- The “Start Date” in these steps will not signal intention to work, but only tasks avaliability. Intention should be set on a daily basis, through the Daily Review process.
The core, as you see is the Daily Review process, as said by Cultured Code on their Getting Started Guide (see “Establish your daily routine” section).
An Example
I’m a Professor and thus I have a set of tasks I need to do weekly, for each class. Let’s consider class is held weekly, on Thursdays. For this, these are the tasks I need to do on a weekly basis:
- Prepare for this week’s class
- Take notes on attendance and questions raised by my students
- Consider changes on this class to next semester
Let’s consider each one of them from two dimensions:
- When can they appear as items available to be done in my list, and
- if they have and what are their Deadlines.
So:
-
For task 1: It should not even appear on my lists until Friday (because I’m working on this week’s class), but it must be done until next Wednesday (the eve of the class);
-
Task 2: It can only be done on the same day the class is held, one day after the fact, my mind won’t remember even the details;
-
Task 3: I keep a note on points I want to consider changing for that that class plan next semester. There is no due date involved.
The end result is:
Task | Start Date | Due Date | Difference |
---|---|---|---|
1 | Friday | Next Wednesday | 5 days |
2 | Thursday | Thursday | 0 |
3 | Thursday | - | - |
Moving this to Things App
When scheduling the recurring Task 1, I’ll have it scheduled like this:
This way Task 1 will appear in my list by Friday (it’s Start Date) and will be Due on classe’s eve (Wednesday next week).
Then I will decide if I want to:
- Do it by Friday (and keep it in my Today list);
- Do it sometime in the future I still don’t know when (and Clear it’s start date to keep the item in the Anytime list);
- Decide to do it by some other day I specify (and Reschedule it to that later date).
So through Friday till Wednesday, Things will allow me to check it done (even if I’ve rescheduled it).
Task 2 will go the default deadline route (“Add Deadline and start 0 days earlier”).
Task 3 will have a start date on Thursdays but will not have deadline (I usually “archive them” for a end of semester review by moving them to the Someday list), so it will use the default dialog.