A Developer's Tale of Time, Toggl and Tasman.

Time entries suck. People that bill time for a living will agree with me. Time is what's invoiced to our clients at the end of the month, and therefore has to be accurately tracked and recorded with detailed descriptions to boot. You might be thinking "how hard can it really be to record what I did during the day?". Well, I challenge you to track your work day in 6 minute increments, and let me know how you fare!

As a developer working on multiple projects, I personally found accurate and descriptive time keeping a challenge. This became evident when meetings and interruptions started eating into my day—so I decided to do something about it. A colleague introduced me to a time keeping tool called Toggl (https://toggl.com/) which I soon realised would tackle the core issue—capturing the minutes that escaped my time sheet.

Toggl at the core is a simple timer that lets the user perform two actions:

  1. Start recording time
  2. Stop recording time

This superseded my antiquated methods of tracking time entries on paper, as I could record the entire day by hitting one button, and jotting in a description when I had a moment spare.

A happy ending you say? Not so fast. I now had a brilliant method of recording time, however the time gods were against me once again—entering the data into our system had become a timely chore, not to mention it was extremely inefficient. The solution? Use those developer skills to create an integration between Toggl and our in–house project management system, Tasman, and automatically sync the data!

A typical set of time entries for a day.
A typical days worth of time entries.

I developed the integration with clear goals in mind. I wanted a solution that:

  • Pulled recorded time from Toggl into Tasman.
  • Automatically attributed time to the correct client, project and task.
  • Let developers edit individual time entry details.
  • Synced the time entries to the database, and tagged them as "synced" within Toggl.

Ignoring my lack of design skills, I mocked up the interface below, and developed a system that integrated with Toggl's API and synced our clients, projects and tasks to Toggl so we could select them when recording time entries.

The interface for syncing time entries from Toggl, fondly nicknamed TOGGLiT.

So, did it make a difference, and was it worth the time invested?

Absolutely—I was instantly recording higher levels of chargeable time that were descriptive and accurate. This eased a lot of the time tracking stress, and allowed me to concentrate on the tasks at hand. More importantly (in the eyes of the boss) my entries were consistently entered on time.

Either you run the day, or the day runs you.

We've since unleashed a few staff members onto the integration with good results, which brings me to the end of my tale.

Let us know in the comments what you've used to mitigate the overhead of time tracking, and how it's worked out for you—Cheers!

Something to say?