[QDo]

To-Do File Basics:

QDo works with your to-do's stored in plain text files. Whenever you make changes to the file, QDo will automatically summarize your next-task and remaining tasks info, and make that available in the menu bar. The to-do files have a simple and flexible format:

Tasks appear one per line with the format: {tab}-[{estimated hours}] {description}

e.g.:

 - [3.0] Buy supplies

When you complete a task, simply put a capital 'X' in front of it:

X- [3.0] Buy supplies.

You can group your tasks into milestones by separating them with:

-[ {milestone name} ]-------------------... {the length of the separator doesn't matter}

QDo knows how to recognize these formats for tasks and milestones and will compute the remaining task time for the current unfinished milestone.

Everything else in the file (including comments) are ignored. You might find it useful to put the date above completed task blocks to later review your progress.


Tips and Tricks:

Storing your to-do's in text files makes updating them very easy. It also gives you a lot of flexibility in how to organize and manage them to suit your workflow. Here are a few techniques we've found useful to better manage our own to-do's:

Milestones and Backlogs

You might find that breaking up long sets of tasks into milestones ("chunking") can help you be more motivated to finish them, and be more efficient at the same time.

We generally organize our projects into milestones that correspond with releases (v1.0, v1.1, v2.0, etc.). All the tasks that need to be completed in order to ship that release go into the milestones, listed in priority and logical order. Once all the tasks are done, we know we are ready to ship, and completed task list becomes an automatic and handy feature list.

In addition, we find it helpful to maintain a list of all the lower-priority tasks that would be nice to have in that release, but aren't necessary. We keep those in a "Nice to Have" milestone directly below the currently active one. When a milestone is complete, we simply roll the nice-to-have list forward, by cutting-and-pasting it to below the next active milestone.

We also keep a "Backlog" milestone at the very bottom of each project's to-do file. Everytime someone has a great idea for a new feature or sub-project, we add it to that list. Every once in a while, usually after a release, we review that backlog to see if there are any items we want to promote to the next scheduled milestone. That might mean further breaking up large features into smaller work items.

This way, each to-do file effectively captures all the possible, scheduled, and completed tasks for a project.

Estimates

Putting time estimates on tasks as you enter them also lets you more easily organize chunks of work that fit into available working time blocks. Say you have 4 hours to get some work done before your next meeting. You can quickly scan your to-do list and pick out a set of tasks that would fit into those 4 hours, even if they aren't the very next ones. Don't worry about being too accurate with estimates. We find that keeping them to "small" (2 hours or less), "medium" (3-8 hours, or less than 1 day), and "large" (more than one day) works pretty well. If you find that you have many large tasks, it may be a sign that you need to break them down more.

When marking a task as finished, update the time estimate with how long the task actually took. This does two things: First, it makes you think about items with estimates that were way off, to help make better estimates in the future. Second, it automatically converts your to-do's into a work journal as you check them off. This makes it easy to later go back and see how time was invested over the course of a project.

Versioning and Backup

Keeping a running backup of your to-do files is helpful for both preventing inadverdent data loss as well as keeping a history of the project's progression. We sometimes find it helpful to review the to-do list as it was in previous milestones to see how priorities and focus changed over the course of time.

As software people, we use a source control system as a matter of course. This automatically archives all changes to our project files, including the to-dos, as we make changes and "check them in". Even if you don't work with software, you might still find using a source-control system useful if you do any kind of projects that involve multiple people working on a set of files. Check out git and Subversion, two popular source-control systems, to see if they fit your needs. They are both open-source and free, and you probably already have the base systems installed on your Mac.

If your projects are mostly solo efforts, you might find that using Time-Machine is more than enough. Mac OSX Lion also has a new Versions feature that makes this even easier.


Let Us Know What You Think

We hope you find QDo and these techniques useful! Check out our blog for the latest tutorials, tips, and tricks.

Feel free to drop us a line via the feedback form to let us know what you think, and if you have any recommendations on other techniques you've found helpful. We're always looking for ways to be more productive.


[Twitter] Follow us on Twitter to be the first to hear about new Apps and get FUN (+free) stuff just for fans.

Other Products:

If you like QDo, also check out our other Apps:

Air Projector

[Air Sketch]


Return to the QDo home page.