Measuring Productive Time with Arbtt

Nick Winter and Seth Roberts have written extensively about a system they call percentile feedback. Each day, they log the many times they start and stop tasks that they categorize as productive or unproductive. At a given moment, they can make statments like “I’ve done more work since I woke up than I have done by this point in 70 percent of days.”

I started looking at the progress display often. To my great surprise, it helped a lot. It made me more efficient. – Seth Roberts, Percentile Feedback and Productivity

I haven’t committed to one important aspect of percentile feedback–keeping my productive time measure visible–but I’ve been measuring and categorizing my time with arbtt. Arbtt logs all open windows and which window has focus. It attempts to avoid logging when you’ve stepped away from your computer but produces log entries to account for the rest of the time.

$ arbtt-dump -l 1
2016-12-10 11:55:52 (38ms inactive):
( ) update-manager: Software Updater
( ) chromium-browser: xxx
( ) chromium-browser: yyy
(*) chromium-browser: zzz
( ) gnome-terminal-server: Terminal

which can be summarized as

$ arbtt-stats
Total time per tag
     Program:chromium-browser | 23m00s |      85.19
        time-of-day:afternoon | 17m00s |      62.96
        time-of-day:lunchtime | 10m00s |      37.04
Program:gnome-terminal-server |  4m00s |      14.81
          Project:SocialMedia |  1m00s |       3.70

An easy interface to help with retrospection and for implementing percentile feedback is

$ arbtt-stats -c Project --for-each month
Statistics for category "Project" (Month 2016-12)
Project:ScrewingAround |    16h41m00s |      14.55
   Project:SocialMedia |     2h34m00s |       2.24
      (unmatched time) |  3d23h27m00s |      83.22

Statistics for category "Project" (Month 2017-1)
Project:ScrewingAround |     7h18m00s |      18.41
   Project:SocialMedia |       52m00s |       2.19
      (unmatched time) |  1d07h29m00s |      79.40