So. Time Tracking is Not Evil.


Time tracking helps you to understand your working habits and rhythm and makes you a better professional. It also helps you to make better time estimates and communicate better to stakeholders. It is also an opportunity to make us more human. (Sounds terribly dry when summarized, huh.)

Once Upon a Time.

When I first started out as a web designer, I hated the idea of time tracking. To my young mind, time tracking is evil and unreasonable and an infringement on the creative freedom of the designer (i.e. myself). At the pinnacle of that evil was oDesk (now Upwork)’s time tracking software, which freelancers on oDesk were made to install in order to capture screenshots of their desktop at regular intervals. So if a freelancer was caught with a screenshot featuring, say, pictures of his dog, then the 15 minute interval represented by that screenshot will be voided, and the client didn’t have to pay for that period. Which means if a freelancer spent just 10s taking a quick look at her personal stuff and that moment was unfortunately captured, then she lost the other 14 minutes and 50 seconds of her work. It was pretty nasty, and even now I can see why I hated it.

But now, ten years into the industry, I can see why time tracking is important and perhaps justifiable. I still think the oDesk software was somewhat Orwellian, but I now realize that proper tracking and management of time is, both to the individual and to the team, an important asset.

Time Tracking is Not About Measuring Hours, It’s About Understanding Yourself.

The whole idea of measuring an employee or contractor based on the hours she worked is just so 1800s – that is, a relic best left to the factory supervisors during the Industrial Revolution. In our Internet age of knowledge workers, such activity is quite pointless. First, because we all know that the employee who spends the most hours in the office isn’t necessarily the most productive, and second, because success isn’t necessarily tied to productivity anymore. A productive worker whose focus is on delivering the goods is no doubt less valuable than the creative worker who finds a better way of doing things.

What, then, is the purpose of time tracking in this time and age?

In my humble opinion, the best thing about time tracking is that it helps us to gain valuable insights into our working habits and rhythm and, in the process, learn how to better ourselves.

In case you think that sounds like BS, let me share a couple of things I’ve learned since I started using Freckle (Now Noko) (my time tracking app of choice):

1. As a web programmer, the maximum number of hours I spend in a day actually programming is 5. 6, if I work overtime. On any average day, my actual programming hours are more like 3 to 4.

I more or less practise the Pomodoro Technique, so my work consists of sprints of focused programming, ranging from half an hour to an hour. In between these sprints, I take washroom breaks, chat to colleagues, get myself a drink, you know, the usual. And I dare say 90% of the time, I don’t surf the Web in the office. (Partly because I’m conscientious, and partly because I’m a private person.) So I’d like to think I’m actually pretty productive, and if I hadn’t start tracking my own time, I’d have assumed I spend an average of 6 hours on programming. But the numbers from my time tracking tool showed me otherwise. On average, I spend around 4 hours programming, way less than what I (and probably the average programmer) believe.

2. Which brings me to my second discovery: that I actually spend quite a bit of time on meetings and discussions, research, and code review (for the benefit of non-programmers: this is a part of our job that entails looking at your peers’ programming code after they’re done to help them spot errors or suggest better ways of coding). So on any average day, when I am helping my colleague with his work or am having fruitful discussions regarding the project I’m working on, I’m at the same time less able to write code and produce actual, visible work.

Which makes sense, of course. Nobody can do everything at the same time, and if you focus on one thing now, you’re naturally not able to do something else. But most of us, myself included, probably underestimate the extent of these “non-producing” work, so that at the end of the day, when we find that we didn’t produce as much as we had wanted, we’re baffled.

Most of us underestimate the extent of our “non-producing” work.

You can probably already imagine how I can change things for the better, based simply on the above knowledge. I can propose to and try to minimize time spent on discussions, or reduce the amount of time spent on reviewing my peers’ work, which was exactly what I did. (Instead of actually running and testing out the code, now I simply look at the code construct and syntax.)

Finally, by knowing how your time flew at work, you can now improve your time estimates, which brings me to the second advantage of doing time tracking:

Time Tracking is Also About Improving Communication.

I do not think the very detailed numbers a time tracking tool provides us are very useful; in fact, the more detailed the numbers are, the more likely people are to get lost in the numbers and lose the whole picture.

But by tracking your time, slowly but surely, you start to have a better understanding of how much time you tend to spend on solving particular problems. Which is to say, time tracking helps us to move from fuzzy time estimates to more confident estimates.

If, for example, you start your time tracking timer and then embark on changing the logo of your website, and when you’re done, check the timer and find that you’ve spent an hour, then you know that future tasks of a similar feature will follow the same pattern and take no more than an hour, and you can safely tell your client that whenever tasks of a similar nature appear.

On top of that, armed with the knowledge that on an average day you’re only really spending, say, 4 hours on actually producing stuff, you can now divide the hours you estimate you will need by the actual productive hours per day to give a real estimate.

Instead of saying, “Uh—that will probably take about 5 days of work”, you can now say, “That will probably take about 40 hours of work, which, when divided by the amount of work that can actually be done on an average day, means 10 working days.” For when you tell your client it will take 5 days, you’re probably thinking 7 to 8 hours of work per day, but we now know that’s not possible. Given meetings, administrative work, unforeseen issues, falling ill, breaks and so on, most of us are unable to do actual work for a full 8 hours, everyday. We can try, but we’re going to lose focus at some point, make glaring mistakes and, in the long run, suffer from burnouts, poor work, and times and times of disappointing your clients or giving them heart attacks.

By knowing with confidence how you use your time and how much time exactly is needed to complete a certain task, you’re giving your clients and managers a sense of assurance, which in turn helps them to effectively communicate timelines to other stakeholders.

Finally, Time Tracking Can Make Us More Human.

Today, once again, I looked at my hours and realized that I spent:

• 4.5 hours actually writing code
• 0.5 hour on daily standup
• 0.5 hour on a short meeting
• 1 hour on reading and replying to emails

Given that I spent exactly 9 hours at the office today, there’s actually about 2.5 hours unaccounted for, which from my memory translates to lunch and tea break and other miscellaneous stuff, like topping up drinks and going to the washroom and chatting to colleagues.

I’m pretty sure that most programmers, if not most office workers, have a similar working pattern. The point here is that at the end of the day, we’re all humans. Unlike machines, we can’t sit still and produce incessantly for 7 or 8 hours straight. We lose our concentration, have biological needs, want to and probably need to connect with other people and, even for a programmer, need to put aside a significant fraction of our time for communication.

The way I look at it, by making use of time tracking to recognize the above fact, we can focus on making the productive hours (in this case 4.5 hours) count, rather than imagine that we can produce more than we are actually capable of. We can be more realistic about what can be produced in a day and learn to plan and prioritize our work. The worker who ignores this essential planning and who doggedly churns out work is more likely to be producing for the sake of producing and to miss the big picture.

Screenshot of Freckle's time tracking report for a particular workday
Example of a Freckle time tracking report for an average day

At the End of the Day, It’s How You Make of It.

It’s been four years since I was forced to do time tracking as an oDesk freelancer. And now, as a full time programmer who’s given plenty of freedom over how I use my time at the office, I’m actually spending my own money to get a time tracking app to keep track of my work hours, voluntarily. How interesting.

Of course, by now I’ve learned that the problem doesn’t lie with the tool, but with how you wield the tool. Time tracking per se can be extremely valuable if used correctly (i.e. not as a surveillance tool), as I’ve hopefully demonstrated above. After all, time is the single most scarce resource for each and everyone of us, so why won’t we want to learn to use it better?