Timetracker – Understand the Past. Own the Future. Users have two main goals when using time tracking software – they want to schedule their future activities, and they want to understand how effectively they have used time in the past. Timetracker is a design for a desktop/mobile application that combines efficient future schedule planning with analysis and presentation of past activities. Modern and responsive to user input, Timetracker’s familiar ‘day-planner’ interface metaphor is accessible to new users, and its combination of reflective analytics and data-aware schedule optimization allows it to replace multiple applications already in use. Future activities can be planned in a way that is familiar to anyone who’s used a day planner. Appointments will be scheduled for a given day, and specified in terms of category of activity, duration and location, and can be configured as one-off or repeating events. This user-specified schedule will be combined with a schedule automatically generated from the user’s UVic academic schedule, and conflicts will be highlighted for resolution. Optionally, the application will connect to online sources of transit and traffic and geographic information, and will suggest modifications to the user’s schedule where permitted, in order to minimize travel time and expense. The reflective, analytic features of the program are accessed through the same familiar ‘day-planner’ metaphor. By selecting a past date or range of dates, the user is able to produce a report of their activities in aggregate, divided by category. This information is delivered to the user in the form of a colourful pie or bar graph, and allows them to assess how their time has been spent. In the case of computer-related activities, information at the granularity of individual applications is available. Optionally, GPS, accelerometer and other environmental information can be automatically gathered to auto-categorize user activities. As is expected from a modern application, Timetracker will be responsive and simple to use, and the principles of economy and least-surprise will be used throughout. Dialogues and user input fields will be related in intuitive ways, and emphasis will be placed on allowing the user to rapidly and accurately enter new events, with reasonable defaults provided wherever possible. Features of the program that require network data access delays will always be optional, and can be deferred or interrupted without input data loss. The program will fail in as graceful a manner as possible, and the user will be protected from unrecoverable data loss or corruption.