Developers are notorious for over-promising site delivery times. Often this is due to project creep. Sometimes it’s a desire to look good. More frequently, poor estimates result from the fact that developers have no idea how long it actually takes them to complete their work.
Traditional time-tracking – punch in at the start of the day, punch out when you leave – doesn’t work well in modern development environments, where coders often maintain a dozen open windows while they work on different tasks throughout the day.
The ideal time tracker application would not only log the effort of different contributors to a project across multiple platforms and devices, but also maintain some record of focus: what the developer was doing from moment to moment. In this article, I’ll explore some options for doing just that.
- Browser timers
- The very simplest tasks can be tracked completely in a browser. Google timer and you're presented with a simple programmable timer that can be set full-screen for maximal concentration. In-browser timer apps like TimerTab, also available as a Chrome app, can run effectively in a browser while you work, recording time spent and setting reminders.
The most frequently recommended time management service, Harvest fulfills most of these requirements: web-based, with an easy interface, 30-day free trial, and local helper applications for Mac, iPhone and Android. The app also provides a useful task time reminder in the Finder’s menu bar.
Harvest does have one significant downside in that it needs to be initiated by the user: you tell the application what you’re working on, when you started doing so, and when you finished (although the app will stop counting time on a task after the computer has been idle for a few minutes). It’s great for sharing task information with team members and/or the client, assuming your work claims are accurate.
Like most of the other apps discussed here, you must subscribe to Harvest to gain pro-level features or to use it for extended periods; the app also has the option of integrating into your billing system, allowing you to invoice clients for exactly the number of hours spent on a task.
Alternative products include timeEdition (which offers Windows support as well as OS X and integration with iCal, Google Calendar and Outlook), minco, Timely and TicToc (only for OS X). But if you want to know how exactly you were spending your time I would suggest…
This application provides a far more detailed breakdown of work, collected from information on not only which software was being used from moment to moment, but even which document, and for how long. RescueTime automatically collates this data in a private repo on its website, allowing you to see your own work habits.
The application does feel somewhat more invasive than a traditional time tracker like Harvest, and will require an privacy authorization to gain the required level of detail from your computer*. I would never share anything more than aggregate information collected by this app with a customer, but RescueTime is extremely valuable for gaining insights into your work patterns and actual time spent on tasks, down to the second, even categorizing your web usage habits.
I particularly like the fact that the application encourages the user to set productivity goals, pointing out possible sources of distraction. Once you start using it, you’ll want to install the software on every machine that you use: there’s no point in tracking your work on a laptop when your desktop machine is simultaneously running Angry Birds.
One downside is that the software only records activity in the application that remains in focus: if you have iTunes open in the background, orYouTube running on a second monitor, RescueTime doesn’t record the fact that they are playing.
Similar and competing products include ManicTime .
toggl promises to merge both approaches: group or solo task-based time recording, mobile integration, and actual activity tracking. However, I don’t find toggl’s interface nearly as instinctive or polished as Harvest or RescueTime.
Similar services include Chrometa and Freckle, the last of which includes billing options for clients. All tend to be scaled for medium to large development teams, with subscription rates to match.
At the end of the day, the kind of time tracking application you use isn’t important: what’s important is that it’s used habitually, integrates with your workflow (I have RescueTime start up and record automatically every time I start a project) and that the records are used to guide time estimates and create better, more focused work habits.
If you have a time tracking system that works for you, feel free to share it in the comments below!
* I’d be considerably more comfortable with detailed software if the companies provided an independent open source solution that could run on one’s own server; hopefully that will be an option in the future.
Enjoy this piece? I invite you to follow me at twitter.com/dudleystorey to learn more.