Todomodo
Final result
I have now implemented todomodo.se.
It is not exactly as first conceived. But please check it out.
Overview
- No prio. Use default tags instead (high, low).
- No due date. Use default tags instead (now, today, week, future)
- Project/Area == Primary tag (must exist)
- Search row must combine project selection and tag selection.
- One field with 0..1 project, 0..* tags, 0..* free text. First is always project/area.
- Dual field which expand right or left. Project selection left, tag selection right.
Model
Item
- Summary
- Description
- Status
- Created, Modified, Completed
- 1..* Tags (first is always primary)
Tag
- Name
- Reference to item
- Primary? (another way is to look for all tags that have been used as primary tag)
Views
- Task list (search field, check tasks)
- Tag editor (also possible to add tags in tag field) – from menu
- Add task (Checked, summary, description, tags)
- Task log (same as Task list, but only completed, rejected items)
Examples
Primary tags (~project, area):
- All (a) - default
- General (g) - default
- dittlag (d)
- wiki (w)
- blog (b)
- shop (s)
Secondary tags (~area, priority, due):
- today (t)
- monday (m)
- week (we)
- high (h)
- low (l)
- pleasure (p)
- it (it)
- w33
Search: (d)ittlag, (h)igh, (w)eek
Add:
Summary - Buy APS
Description – “”
Tags – (s)hop, (i)t
Instant Note (todomodo simplified)
Todo/notes features
- One web field to task/note input
- Items are sorted chronologically and by tag (through web interface)
- Links are identifed automatically
- Item may be expanded to include image links
- A simple (-) (+) sign to remove/edit items afterwards
- Shift-Enter for multi-row
- All removed items are stored in history
Timed Task
A timed task is like a regular task with a few additional items.
- Title (mandatory)
- Description (default to empty)
The additional items are
- Start day - default to today
- Start time - default to unspecified i.e. sometimes today
- Duration - default to whole day
View timed tasks
Timed task can be shown in a calendar view
/project/month - this month
/project/week - this week
/project/day - today
/project/month/1n - last month
/project/week/1 - next week
/project/day/1 - tomorrow
All tasks in all projects can be shown using all
/all/month - this month
Short Notation
Timed task is entered like any other task with some additional notation.
A regular task is entered as:
TITLE
[DESC]
A timed task has some new items in the title. All items are optional except the trigger word.
TITLE TRIGGER_WORD [START_DAY] [START_TIME] [DURATION]
[DESC]
The simplest timed task can look as follows:
Meeting with customer ON
The ON
keyword specifies the task as a timed task with with defaults (today, unspecified start and whole day).
TRIGGER_WORD: ON|IN as start symbol (mandatory)
You can optionally add more specific data like start day.
START_DAY:
[] - default to today
1w - today in 1 week
2w - today in 2 weeks
2019-12-31 - date
31/12 - date
1d - tomorrow
2d - day after tomorrow
Starting time.
START_TIME:
14:30
14
Task duration.
DURATION:
30m - 30 minutes
1h - 1 hour
2d - 2 days
Other features
-
Wolphram alpha knowledge lookup
- "time in san francisco"
- "123 sek to usd"
-
Send mail (to default mails)
- Note about wolphram: Message @gm
-
Send SMS
-
Hoogle, Google, Image search
-
SMS/email reminder
References
- Berkeley DB in Android (whitepaper)
- ThoughtDB
- TaskWarrior
- Remind, Remind source - Presented at Floss weekly.