miércoles, 30 de junio de 2010

Ruby Time Tracker

Hi guys,

If you are one of those people that works as freelancer or want to keep track of your time for some motive, then this post may interest you.

There was a point in time that I used web sites (free or paid) to track my working time, but I got annoyed because of the time loose reaching those pages or the network issues you might have while using them... and as you may agree with me, nothing is much efficient that using command line tools. So, I've just write a new gem called RTT to track time from the command line. Here is how I use it all the time:

$ rtt 'new task description' (when I started the timer)

To stop (or pause) it, just type:

$ rtt stop (pause)

Then if you've a task already paused, then you can:

$ rtt resume

Or, to restart an existing task already finished, you can type:

$ rtt 'task description'

Then the new time, will be sum to the existing accumulated time for that task.

Also, I always want to check how I'm doing today, so I've type this:

$ rtt list

And I get and output like this:

Task List
=========
Task: || Client: || Project: || User: || Elapsed time: 0h58m
Task: || Client: || Project: || User: || Elapsed time: 2h20mm
Task: || Client: || Project: || User: || Elapsed time: 0h25m
...

Having a time tracking tool for the command line was the main propose to gain time, and avoid all network issues for tracking time using web sites. But also, I've included in this gem a way to generate PDF's documents (or invoices if you will), so that it is easier for you to send your worked hours, using this command:

$ rtt report

So, If it sounds like it feet for you, you can install it as usual, with:

$ [sudo] gem install rtt

There are several more options for filtering tasks for the list, delete or report command, you can check for those here: http://github.com/marklazz/rtt

Enjoy!

1 comentario:

iPad Application Development dijo...

Good write-up, I’m a regular visitor of one’s blog, maintain the nice pace, and I’m going to be a regular visitor for a long time.