Thursday, July 09, 2009

Measurement promotes success

Computer science involves effort measuring things: profiling code, tracking memory use, looking for inefficiencies in network connections, determining the number of database queries are required for rendering a typical web page in an application, etc.

I have started also measuring something else: how I spend my time. I used to just track billable time and leave time spent learning new languages, new frameworks, writing experimental code, etc. as unmeasured time. I now use a time tracking application on my Mac Book to track 16 different categories (billable, and learning/research - I also track time on Reddit, Slashdot, etc.) The overhead for these measurements is probably about 2 or 3 minutes a day, plus a few minutes to look at time spent at the end of a day, end of a week, etc. For me, this is useful information.

3 comments:

amatos said...

Just curious: which application are you using?

Mark Watson, author and consultant said...

Hello Amatos,

For Java, I use YourKit profiler.

For Ruby, install the GC measuring patches (e.g., see: http://blog.pluron.com/2008/02/memory-profilin.html) and using the patched version, install the ruby-prof gem, rails, whatever you need.

For Common Lisp, I using Franz's profiling tools.

Mark Watson, author and consultant said...

Hello Amatos,

If you were asking what time tracking tool I use, it is "Time Tracker" for OS X.