I’ve been using Everdo since before version 0.0.1, and one of the inconveniences for me is the lack of support for making a project “blocked”. Another is that some actionable items in Sequential projects are hidden from Next. Both issues exist because the only relationship between project tasks Everdo can represent is sequential ordering. So the Next list can sometimes include actions that are not really actionable, which goes against the Getting Things Done (GTD) method.
With this post, I want to
- consolidate the forum topics we have that are related to this into a single thread (the most recent one). I will close the others.
- suggest some ideas that are feasible and ask for your feedback
To reiterate the previous discussions a bit, implementing full-blown dependency graph-style workflow is impractical for multiple reasons and doesn’t fit the product vision in terms of UX complexity and suitability in a “tactical” view of your tasks.
If I put my dreaming hat on, I can imagine Everdo having two modes: tactical (existing) and strategic where you can manage areas of focus and bigger milestones consisting of multiple projects. Dependencies between projects would make a lot of sense there. But the internals of a project would still be a purely tactical thing that is short enough that complex dependencies between tasks are not appropriate.
Anyway, back to Earth now.
A) Blocking Tags
Here’s what I do at the moment to prevent tasks from appearing in the Next list.
I created a special blocked
tag that I put on the top-most Next action in a project that cannot move forward for some reason. Then I filter out such actions in the Next view.
This approach has some problems
- Friction, so I don’t always do it
- Very often a project is blocked by an action in Waiting and it should be unblocked as soon as the Waiting item is resolved. Again, inconvenient.
What could be done instead is supporting this workflow at the application level. For example
- You designate a tag that will mark blocking actions, say
blocked
- There is a button/menu option/command to easily apply/remove this tag to/from any action
- The effect of this tag depends on where it’s applied. If it’s on a sequential action, then this action or any of the following ones will be excluded from Next
- If it’s applied to a Waiting action in a project, then all actions are blocked from Next
- When you open Next, the blocking tag is automatically excluded
This benefit of this approach is that it uses the core functionality of the app for the most part, but I feel like it would cover a lot cases where dependency tracking is important, without a lot of UX/process burden on the user.
B) Make sequential
and parallel
be attributes of Actions, not Projects
This solve a different problem - sometimes you have actions that can be done at any time and some that must be done in sequence. All in the same project.
So instead of treating all actions the same, we have a project default + override at the action level. Here’s how it works
- Any new action in a project is created Sequential, but you can set it Parallel manually
- Both types are still mixed in one list at the project level. You can reorder tasks as before.
- Because all tasks are on the same list, it’s important to see which is which kind. So there’s an icon, something like
->->
for sequential and|||
for parallel. - When the aggregated Next list is computed, Everdo will pick the appropriate actions based on your ordering.
- If the top action is Sequential, it will appear and the rest are ignored
- If the top action(s) are Parallel, they will appear + one of the sequential actions. The rest are ignored.
It seems to me that this way you can mix and match items into a single chain, again without much extra UX complexity and cover another big chunk of cases where you need dependencies between tasks.
A bonus is that both approaches outlines above can work together.
My questions:
- Do you think this would work for your use cases?
- Can you find any problems with it?