Tracking time
June 17, 2008 – 15:01Rationale
I, being a software developer, team leader, project manager and, generally, a busy person, desperately need time tracking and planning tools.
More exactly stated, it’s not the tool I need, but I need instant answers to questions, whenever I’d like:
- where my time had gone?
- what’s the closest checkpoint time for every developer online?
- how much time my team mates spent and what task it was?
- how much time I have to bill my customer (per customer per project)?
- how much I have to pay to my developers (per developer, obviously)?
These questions are very different, require different information to be collected and different decisions are to be made using the answers.
Personal time flow
Record attention flow (mouse pointer, active and top windows, keyb activity) for future analysis.
Analysis result should within single graph depict time flow and how it was really spent on different tasks.
Problem: how define “tasks” automatically/semiautomatically?
Similar solutions:
- (link to macosx solution lost)
- gfocustimer – declares to watch the focus, but doesn’t seem to work
How to implement:
- clone X11 xev to record X events to the database
- analyze db with a custom script
Communicate checkpoints
Since our usual communication channel is a jabber room, the solution should be probably a jabber bot, residing there, monitoring what is said and keeping a checkpoints record.
A log of some kind would be useful too.
Similar solutions: any?
How to implement: go and hack; it should be simple.
Track billable time
This, probably, should be a simple start-stop watch residing in a dock area or completely off-screen.
It should record tasks and start/stop events to a local db, allow user to edit it and report it upstream.
Similar solutions:
How to implement: since there are vast number of time-counting programs, the task boils down to integrating them with some protocol.
Consolidate billable time
Get updates from solution, crafted in the previous part, and drop it into bigger db. This time the resulting db probably should be sql, for the ease of reporting.
This also should integrate with Trac somehow.
Similar solutions: see above – everything starts with the protocol
How to implement: hack it.
Summary
This pretty much outlines what I need from time-tracking tools. Few (if any) solutions are ready, so most of them are to be hacked out ourselves. Will be glad to be proved wrong.
Now, well, the estimation is the whole different story.