Some of the companies I have worked at needed a break-down of hours spent on different projects/tasks. To make that information easy to keep track of, I created a small C#.Net WinForm application. When running and minimized, it lived in the Windows system tray. A right-click menu of the system tray icon provided a quick way to begin a new task for one of the 'active' projects. Configurable options allowed for displaying an entry dialog at the beginning and/or at the end of a task for entering notes. The project and task data was stored in XML files.
My requirements for this type of tool were:
- Small, doesn't get in the way; unobtrusive when running
- Quick to start new tasks in case someone stops by for a 'brief' discussion or I get pulled into an unexpected meeting
- Easy to see how long I have worked on the current task, shown via a balloon help window when hovering over the system tray icon
- Able to summarize/group data by project, but can still get/copy detail to clipboard for entry into a company time system
- Doesn't require selecting from a list of mostly old, inactive projects. Active vs inactive projects. See 'quick' above.