Tool spotlight: arbtt - The Automatic Rule-Based Time Tracker

The name says it all. arbtt-record runs in background recording opened windows, their titles and active window.

Later you can use arbtt-stats to categorize, tag and display recorded data based on defined rules. Example file shows the possibilities, but you can get interesting information with only a few rules.

Examples with ~/.arbtt/categorize.cfg:

What applications do I use?

$ arbtt-stats -c app
Statistics for category "app"
=============================
________________Tag_|______Time_|_Percentage_
       app:terminal |  3h05m00s |      27.29
        app:firefox |  2h28m00s |      21.83
           app:mail |  1h38m00s |      14.45
         app:chrome |  1h14m00s |      10.91
            app:IRC |  1h09m00s |      10.18
             app:IM |    52m00s |       7.67
           app:gvim |    51m00s |       7.52
(1 entries omitted) |     1m00s |       0.15

How do I waste my time?

$ arbtt-stats -c evil
Statistics for category "evil"
==============================
_____________Tag_|______Time_|_Percentage_
      evil:Gplus |    48m00s |       7.04
       evil:9GAG |    35m00s |       5.13
(unmatched time) |  9h59m00s |      87.83

What am I doing all the time?

$ arbtt-stats
Total time per tag
==================
_________Tag_|______Time_|_Percentage_
        work |  8h25m00s |      73.83
app:terminal |  3h05m00s |      27.05
 app:firefox |  2h29m00s |      21.78
    app:mail |  1h38m00s |      14.33
  app:chrome |  1h14m00s |      10.82
     app:IRC |  1h09m00s |      10.09
    app:gvim |    56m00s |       8.19
      app:IM |    52m00s |       7.60
  evil:Gplus |    48m00s |       7.02
   evil:9GAG |    35m00s |       5.12

I can tell how much time I spent in tools I use for my work, what applications I use most and how much time I wasted on teh internetz. Pretty nice, huh?

pro tips

  • arbtt is written in haskell! If your distro doesn’t package arbtt, I recommend installing using cabal-install.
  • Your window manager must set EWMH hints. For XMonad, use XMonad.Hooks.EwmhDesktops.
  • Don’t forget to start arbtt-record with your X session.
  • Tags and categories are processed by arbtt-stats, you don’t ever need to wipe your data when rules change. So start arbtt-record right now and create rules later.

Happy tracking!

blogroll

social