Procrat / eva

Let algorithms decide your life.
Apache License 2.0
34 stars 2 forks source link

Task dependencies #5

Closed TomNaessens closed 7 years ago

TomNaessens commented 7 years ago

Some tasks depends on other. You cannot clean the dishes while having eaten first. You cannot vacuum when you haven't dedusted the furniture. If 2 tasks would have the same importance, Eva might schedule them in the wrong order.

Adding a dependency between tasks might solve this possible issue.

Procrat commented 7 years ago

There definitely needs to be some order in those cases. I was planning on doing this as part of the "Life organising scheme" item on the roadmap, but I totally agree that that wasn't clear. The reason why I'm postponing it until then is because I'm wondering if I can use the assumption that dependent tasks would be part of the same project, and projects might have a fixed ordering (or not?).

At any rate, having dependencies between tasks in the core API of Eva seems like a very reasonable thing to implement on which we can further build. It's rather the user-facing side of that I have questions about.

iasoon commented 7 years ago

@Procrat I think this is an important core concept, closely related to the 'next action' in GTD. Having a 'next action' essentially means making all tasks in a project dependent on one task: the next action. Since you can often plan further ahead than just the next action, it is useful to immediately organise your tasks in a 'dependency tree'. I feel this is key to achieving focus in your life, since it allows you to only focus on the root. Note that a dependency does not have to be a 'hard dependency'. Think about reading books: it doesn't usually work well reading multiple books simultaneously (in the same category, at least). It makes sense to pick one, and only reconsider which one you'll read next after you are done with your current one.

In short, I think this is more about cleaning up your task list than actual hard dependencies (it is just that actual hard dependencies are a great indication of what you should prioritize ;-) ).

Procrat commented 7 years ago

@iasoon Eva simulates GTD's next action by scheduling. I don't think we need another system for that. I think @Silox was talking about a hard dependency here. I don't really get the books analogy. I like reading multiple books simultaneously; it's what gets me in my most creative mood, but I also have a queue of books to read. Depending on what your preferences are, I'd say you put in hard dependencies between them or not.

@Silox I'm adding dependencies on the short-term part of the roadmap. We can think about what the most user-friendly way is of inputting those is once we're working on a UI. I like the idea of using a Gantt chart for that. That also nicely illustrates the dependencies and identifies the critical chain(s) in your projects. I'm closing this with a741b8cad3ce63f1b219b27307c66f0625c8c574 but feel free to reopen it if you don't agree.