WhenToDoIt

WhenToDoIt is an iPhone app for the scheduling of multiple events or “tasks.”

Why get it?

The goal of the app is to make scheduling complex lists of events straightforward. For example, if Task A needs to be performed every two hours, and Task B every three hours, the app will provide an accurate schedule from each task’s start time into the foreseeable future. Similarly, Task C, defined to occur at 9AM and 5PM, will be seamlessly integrated into the other task schedules.

Paid vs free

The free version of the app allows one task to be created. The paid version allows unlimited tasks. There is no other difference between the versions.

Types of Schedules

A task is scheduled as either a set of fixed times during a daily schedule (e.g., 9:00AM, 12:00PM, 5:30PM), or as a start time with a repeating interval (e.g., start at 9:00AM today, then repeat every 4 hours).

A repeating task may be restricted to occur only within certain intervals of the day. (This does not apply to fixed-time tasks.) For example, if a user defines a “break” every twenty minutes to get up and stretch, the active times may be designated between 9AM-12PM, and 1PM-5PM. Schedules outside these times will not be visible, and alerts will not be presented.

Notifications

A notification is produced when a task time is reached. The notification is both an alert on the screen and, by default, an alarm. The alarm may be turned off in the settings. If notifications are turned on in the iPhone’s system for the app, additional options are available to inform the user of the event, and will provide a more direct route to open the app (e.g., by tapping on a banner).

Lead and lag times

A task has both a lead time and a lag time, both of which are defined by the user. The lead time is the time before which the user can fulfill the task. Although an alert will only be presented automatically at the reminder time, the task may be manually selected and recorded by the user within this interval (this option is always indicated in the schedule, when available).

The lag time is the time after the scheduled time during which the task may be fulfilled. If an alert is presented and the user does not respond, the alert will be removed automatically at the end of the lag time for the particular task.

How do you use it?

The app has three tabs: Schedule, Tasks, Settings. The first step is to create a task in the Tasks tab. Then select the Schedule tab to see the current day’s schedule for that task.

Previous or next days’ task schedules can be examined by moving backwards or forwards day-by-day with arrow buttons.

When an alert is to appear, the schedule returns to the current day, displays the list of open tasks, and presents the alert. If several tasks overlap (occur at the same time), they are all presented in the alert.

The alert allows the user to either Skip a task, Do it, or simply close the alert box. The response to any task within the lead-lag time can be changed by tapping on the appropriate schedule entry. If the entire alert is closed, the individual events can be edited in this way, or the alert can be re-opened by tapping Check now in the upper right corner of the window.

Task notation, editing, etc.

Task entries in the schedule are tinted yellow (missed or skipped), white (available), or gray (future). White tasks can always be tapped to record a status (skipped or done). Missed/skipped or future tasks within the lead-lapse time can be tapped to change the status to Done. Similarly, tasks that have been done may be changed to skipped with this range. Task entries outside the lead-lag range cannot be altered.

A task may be turned off in the Tasks tab. This allows a task to be suppressed in the schedule, and notifications will not occur. Turning it back on will restore the schedules and start notifications.

Tasks may be edited at any time if attributes need to be changed. Certain attributes will require adjusting the start time so that historical entries will remain intact. The same effect can be produced by turning the task off and defining a new one with new attributes, the only difference being a slight loss of continuity with scheduled records.

If a task is deleted, all data recorded with that task are also deleted. This is not undoable.