Introducing SideTrack

Developing a Todo List app is the last thing I want to do:

Todo List apps are highly personal pieces of software with ardent, devoted users. There are dozens of great applications out there already and I think it would be hard to come up with a new, original app that could stand out.

However, I recently ran into some issues with my own task management process and couldn’t find any software that did exactly what I wanted, so I spent a few hours and wrote my own. I’m publicly sharing this software—if it works for you, great! If not, then there are dozens of other apps out there…


I use TaskPaper for almost all of my software development’s list keeping: features to add, bugs to fix, etc. TaskPaper lets you enter items in plain text format which then gets parsed into a good looking checklist. (TaskPaper even lets you customize the look so I’ve developed my own off-white theme.)

TaskPaper is an excellent piece of software, but one problem I have is scheduling or estimating the work required for items. My lists will grow and grow as I find new items to add which causes my development schedule to slip. (The developers behind TaskPaper recently released a new app, FoldingText, which is better designed for time tracking, but it doesn’t have this specific functionality yet.)

I’ve used project management (PM) software before (Merlin) but even simpler PM applications, like OmniPlan, are overkill.

An app that comes close to what I want is OmniOutliner, an outlining/todo/list management app that has the ability to track time for tasks. I took my TaskPaper list and brought it into OmniOutliner and added a time column. Item groups will tally the total of their children, in bold:

There are a few problems: The styling for completed items is not as clear as TaskPaper’s grayed text. The big problem, however, is that completed items are not removed from the totals!

Unfortunately, this makes OmniOutliner useless (to me) for tracking progress.


A few hours of coding produced a new app which I call SideTrack. Because it lets you track your time. On the side of your list.

I’m also calling it SideTrack because it’s been a literal sidetrack from my iOS apps, Percolator and Popsicolor, that I’ve been trying to update and release.

To keep things simple, list entry is in plain text which is parsed and formatted. Like TaskPaper, you can check off items by clicking on the dash. And like OmniOutliner, you can have a column of time estimates, but notice that the completed items do not contribute to the group totals.

Here’s what the document looks like when edited. Clicking anywhere (except on a checklist dash) will toggle editing mode; pressing the Escape key will finalize editing and format the document. Parent/child relationships are controlled by tab indenting. A time estimate is added to a line by tabbing—any number of tabs—and entering in a number followed by h, d, or w for hour, day, or week.

(There’s some formatting bugs with text wrapping in editing mode—the “1h” on line four should be at the end of line three—but it’s just cosmetic.)

And now, here’s something completely new and original: Due dates and scheduling.

Add a date to a line and a due date is created. Scheduling of child items is automatic and it’s pretty smart: Internally there is a “working week” object that defines the number of hours in a day and the days of the week that you work. The scheduler works back from the due date, taking the time estimate of the task into account, along with the working week, and computes a due date for each item that needs one.

Right now, the working week is hard coded for Monday–Friday at 8 hours a day, but if it were customizable on a per-list basis, you could use one list per project and devote only certain days of the week to that project.

The formatting above is a bit squished, but that’s because I’m trying to keep the images at 100% scale. The content will flow if you make the window bigger:

(Hey, there sure looks like room for a 4th column—to display a simple Gantt-style chart or calendar…)

And here’s the plain-text version of this list:


Don’t you hate reading about software that you can’t download? Me to, so I’m making SideTrack freely available while it’s being developed. This is “Preview 1″ and it doesn’t even have a custom icon.

SideTrack is being released as “free” because it is an experimental project that I (as Tinrocket, LLC) don’t have the time to properly support. I’ll only be updating it if I have the time or need a new feature. If you’ve bought one my iOS apps then you know that I fully support them, and that’s what my priorities are right now.

This is alpha software. It may be buggy and you may lose data, so use it at your own risk. SideTrack requires a Mac running OS X. Preview 1 will expire January 1, 2013.

Disclaimers aside, I’d love to hear your feedback. You can reach me here. Thanks!

zip SideTrack Preview 1
(698 downloads since 2012-11-12)

Comments are closed.