Giving RescueTime a Shot

January 15th, 2009  |  Published in attention  |  1 Comment

I’m giving RescueTime a look for the next 30 days. It’s a Web service driven by a small client-side data collector that gathers information on the current active application and visited sites. The information is uploaded and compiled into a series of reports. Users can categorize applications and sites, add tags for further organization, and weight categories by their “productivity.”

I’m not fond of the product’s dependence on terms like “efficiency” and “productivity” to describe the weight users can assign to categories and tags, but I’m also not in the business demographic, which is where RescueTime hopes to make its real money.

In fact, if I worked somewhere where RescueTime was used to “surface the idea of time management in an interesting and engaging way,” I’d find it a bit creepy and would have to consider having some fun with the client-side monitor’s eminently parseable YAML logs:

- os_username: kindjal\mph

  app_name: TextMate

  window_title: 'Hi, boss ... busy busy busy!'

  start_time: 2009-01-15 06:23:47

  end_time: 2009-01-15 06:24:33

In fact, it’s those logs that keep me interested in it at all. Even if RescueTime turned out to be a really poor service, or just plain folded, the monitor app is just a lump of AppleScript with a preferences interface. I say “just a lump,” but it does show how to do a lot of stuff I’d rather not have to reinvent myself. It would be trivial to build something out of the exposed script and write my own parsers/interpreters. It’s even possible to extend it now. Here, for instance, is the bit of the script that deals with Firefox logging:

if theApplication starts with "aFirefox" then


            tell application "Finder" to set appName to \ 

                name of application file id "org.mozilla.firefox"

            tell application appName to set fullURL to \

                «class curl» of window 1

            if debugLog is true then log fullURL

            set extendedInfo to extractDomain(fullURL)

            return extendedInfo

        on error error_message number error_number

            log_error("Error: " & error_number & ". " & error_message, "1140", 4)

            set extendedInfo to "empty"

        end try

    end if

For an app like NetNewsWire, which gets a lot of my attention but doesn’t receive very good coverage from RescueTime, that provides a decent template for pulling the current active article in NNW, e.g.:

tell application appName

    set fullURL to the URL of the selectedHeadline

end tell

The logs are all stored locally once they’re uploaded, too, so I can use them for my own applications.

I’ve tried RescueTime in the past, but I didn’t have any real goal for using it. Now I can see how it could fit into a broader campaign to be mindful of where my attention is going, and it lets me concentrate on the parts of my attention tracking app that are more about identifying priorities and creating a useful feedback loop.


  1. steve says:

    February 24th, 2009 at 1:24 pm (#)

    So, did you like it? Did you find it useful? Who do you think would?

Leave a Response

© Michael Hall, licensed under a Creative Commons Attribution-ShareAlike 3.0 United States license.