Moon-Jumper Tasks

From Adam Colton
Revision as of 18:25, 19 October 2017 by Adamcolton (talk | contribs)
Jump to navigation Jump to search

Basic Fields

  • Name: name of task
  • Notes: additional notes, hyperlinks are automatically linked. Should add a task notation link too.
  • Points: time/energy requirements of the task
  • Label: task context

Read-Only / Computed Fields

  • State
    • Active: task can be worked on. It will show up in lists and when the priority is high enough, it will show up in the main list
    • Backlog: tasks assigned to the backlog will never become active until they are removed.
    • Pending: some pre-req hasn't been met.
  • Group: Task is
  • Date Active: when a task changes from pending or back log to active, this is updated.
  • Date Complete: date when a task is marked as done

Conditions

  • Date: when a task is given a date, it will not be active until after that date.
  • Task: a task can be made dependent on other tasks, it won't be active until all dependent tasks are completed.
  • Group Stage: a task can be added to a group, it is part of a stage. Only when all prior stages are complete can you work on that task
  • Date Range: Takes two month/day and returns true for dates in between.

UI Conditions

  • Button: Can only be pressed once.
  • Switch: Can switch on and off.

UI conditions can themselves have display conditions. So a button can be set to not show up until some task is complete.

Maybe Conditions

  • Weather: takes the users location and lets user exclude tasks based on certain weather conditions (temperature, rain probability). One catch is that this should not reset the active date.

Repeat

A repeater holds repeat logic. Either a task or a group can repeat.

All Done

Will keep repeating the task until you indicate you're all done. Good for something you want to work on in pieces, but don't know how long the whole thing will take. If I add buttons, this could be linked to a button. The task repeats until the button is pressed. That also works out nicely because you can add

Days

Repeats some number of days after completion

Week

Repeats by day of the week.

Month

Repeats by day of the month, negative means counting from the end of the month.

Date

Takes a month/day.

Views

Controls

  • Label : only shows tasks from that label

Views

  • Lists
    • Main : shows a list of tasks. Automatically limits by points per label.
    • Active
    • Backlog
    • Date: shows all tasks with a date-req
  • Task : shows the details of one task


Priority

This is always hard to get right.

I like the 4 priority stages I use. 3 normal levels and Now that means it always shows up in the main list (overriding point limits).

I'd like to add a hidden secondary priority. Each priority level forms a queue. When a task becomes active, it's set to the bottom of it's priority queue. You can also "Bump" a task to send it to the bottom of the priority queue.

  • How would you promote a task?
  • What to do when changing priority?

Label

Maybe do calendar import: Import a calendar and scale a labels point based on free time.