June 11, 2007

Best of Times

I’ve been doing a lot of project work lately and so have come back to something I’ve needed in the past – a good project time tracker :) Now in the past, I’ve tried various software offerings. Of course, there are also online options such as SlimTimer or Toggl. But the thing is, I don’t like relying on online systems much, especially when I would have to be online to use the functionality when I needed it. Internet connectivity out here can sometimes go down suddenly and not come back for a while (sometimes weeks in one infamous incident :p). So, I’d rather have my tools on my desktop where I can access them quickly and always.

With the online stuff eliminated (or not even considered :p), I turned my attention to the desktop apps. And I tell you, there sure are a lot :) But the thing is, all of them fell short in one respect or another. My personal favourites were TimeStamp, Easy Time Tracking Pro, Activity Time Tracker and AllNetic Working Time Tracker. Each of them had their own strengths and weaknesses.

TimeStamp is freeware and the source is included. So if need be, I could modify it to work the way I wanted it to. However, the interface was clunky (probably because the author was using freeware components so that he could keep the source open) and it didn’t have support for multiple tasks for a project. Or rather, it did have support for multiple tasks, but I didn’t like the way it did timings since you couldn’t get individual time blocks for each task. Plus, it had this whole thing about "slack time" that I didn’t really like :p

There is a free version of Easy Time Tracking (ETT) but what I downloaded was the pro version but I believe either would have suited my purposes. ETT is a solid application and it appears to have everything you might need. It allows you to manage multiple customers, projects and tasks for projects. You can set rates at the customer, project and task level. However, each time you start a timer, you have to specify which customer, project and task the timer is for – it will not take the current selection into account. However, you can pause the current timer at any point and restart and it will add multiple timing records for each time chunk. But the interface to do all this was clunky as you had to right-click on the system tray icon, get a menu and select your option from there. The other issue with ETT was the fact that it does not support multiple files/databases – all your project and customer information has to go into one pre-set database. So I didn’t like it overall :p

While ETT looked big, complicated and all-encompassing, Activity Time Tracker (ATT) went in the opposite direction :) It’s compact, looks colourful and presented all the relevant information in one screen. But at the same time, it had client management and projects but not tasks. However, you could attach a description to each timing block and so link together multiple time blocks as one task. ATT did remember the currently selected project (and allowed you to switch projects via the tray menu) but starting/stopping the timer was cumbersome since you had to do it via the tray menu. There was no rate information at the customer level but you could enter different rates at the project level but it was all for the default system currency – you could not specify different currencies. ATT had some detailed reporting and a time sheet wizard to generate your time sheets for you but it too suffered from the same issue as ETT – there was only one single database and there was no way to change that.

AllNetic Working Time Tracker (AWTT) was probably my favourite out of the lot. Their website might not look very professional and be a little chaotic but the application was great and very simple :) It provided support for individual project files (you could save as many as you wanted), projects and tasks within each project. There was no client management but since you could have multiple files, I assumed they were looking at somebody maintaining one file for each customer/client. There was a rudimentary billing system which kept track of whether specific tasks/projects had been settled or not and it keeps track of the currently selected project/task for timing purposes. However, AWTT has nary a sign of rates anywhere! You can’t specify rates and you certainly don’t see a sign of rates or currency in any of the various reports it can generate. What I did like about AWTT though was the fact that you could assign hotkeys to start/stop the timer and the nifty little hint window it popped up when you hovered over its icon in the system tray. Unlike normal tooltips which show only the app name or other little bits of information, AWTT actually pops up a tiny window where you could see all the project time totals for today, yesterday, the week and the month at the overall, project and task levels. You could also start and stop the timer from there as well. Overall, I loved the features and interface of AWTT but the fact that there was no option to enter rates (or currency) was a deal breaker.

Given that I didn’t like any of the programs I looked at, I decided to write my own. I had actually begun work on this app sometime ago and had called it Loafer. (If you notice most of the time tracking apps had really long names – I wanted something short and easy :p) I’d done about a day or two of work on Loafer and had then stopped but started again a couple of days ago. After several days of work, I have a usable app which allows multiple files (for separation of projects by client), projects, tasks, billing rates at both the project and task level and multiple currencies :) I’ve integrated most of the features that I really wanted and I’m quite happy with it. It’s still a bit rough around the edges and I do need to do some more work on it and to add in reporting but once I get it all together, I believe it would be a pretty neat app. If anybody wants a copy of it for evaluation purposes, I can send you a time-limited version but I’m not sure I’m going to give this one away :)

Be Sociable, Share!
Tags: Coding, Internet, Software
Posted by Fahim at 6:39 am   Comments (4)