I spend a significant chunk of my work day writing code. Some of that is building new features, some of it is fixing bugs, and still more of it is going back to refactor something I sloppily threw together earlier. I’m doing a lot of different things, and it’s often hard to remember them all.
Luckily, Git forces me to leave a log message about what I’ve changed with each commit. It’s a good audit trail. If anything ever goes wrong, we can usually roll back through the Git commit logs and easily figure out the likely culprit.
But commit messages represent something more than just a way to make code rollbacks easier. They’re also a pretty useful document of how I spent my time. Reviewing the contents of
git log is pretty clunky, so we just added a way to easily import your git commit messages into RescueTime Premium as highlight events.
Adding commit logs to my Highlights stream helps me understand my software development time better. Was I working on the right things? Did the amount of time I spent coding that day really make sense compared to what I actually checked in? When I get really busy, work becomes a blur, so it’s nice to have an easy list to review at the end of the week and remind me that, yes, I actually did accomplish some stuff.
They’re also really useful alongside the rest of my highlight events, so I can see how all my activities are lining up and if I’m neglecting anything. I use different labels to group commits for different projects, so I can see how often I’m committing code for the RescueTime web site, the browser extension, or any of our other projects.
How to log your own Git commits as RescueTime Highlights:
- Make sure you have RescueTime Premium. You will need it to post highlights.
- Go to our Git integration page and generate a post-commit hook file. You can customize the highlight label (‘code commit’ vs. ‘website project commit’, vs. etc…), and choose whether or not to ignore commit messages less than 20 characters. I do this so I can skip over commit messages like “oops, typo”.
- Save the generated file in your Git project’s .git/hooks directory
- Give the file executable permissions (
chmod +x post-commit)
That’s it! All future commits will automatically be logged as highlight events in RescueTime and will show up on your dashboard and the weekly email reports. It’s just one more way you can save yourself some typing and still keep a rich record of your accomplishments.
What do you think?
Updated Again: Samsung and LG’s build of Android 5 (Lollipop) for the G3 and S5 (some) missing core OS librariesPosted: February 6, 2015
Update 2015-02-23: It appears the Android 5 build on the Samsung S5 in certain markets is also broken in this way. Vote with your wallets, people. Or retweet our rant.
Just a short post to rant about LG.
Our European users, where LG is first rolling out their Android 5 update for the G3, have reported an issue with RescueTime. It turns out the issue is actually with LG’s Android 5 build.
It appears that LG has pushed out a variant build of Android 5 missing an entire library that is part of the SDK specification for build level 21 (Android 5), the “android.app.usage” API.
Android 5 removed the old system level features RescueTime used to make the product work, but replaced those features with better, more robust, and safer features in the app usage API.
For some reason, LG has managed to produce a build that apparently selectively rips out this part of Android. I haven’t read the fine print, but I wonder if this violates Google’s more recent licensing of Android that attempts to reduce fragmentation.
How are developers supposed to build apps for the Play Store, if manufacturers break the core SDK like this?
We just made a change to how we record time spent in Google Docs and Office Online. You will now be able to see the type of document you’re spending time on, instead of just having everything grouped under the generic “Google Docs”, label.
Changes that affect the lower level data stream are a pretty big deal for us, so they don’t happen too often. We thought this one was worth doing though, because it will help you understand your time more clearly. And, importantly, it will make time spent on your online productivity tools compare more precisely to your time spent on tools you install on your computer.
Here’s the gist:
- When you enter in a Google web application from Google Drive, for example open a spreadsheet in Google Sheets (they have about 3 different names for it, that is one), that will get tracked separately from time spent on a presentation opened in Google Presentations (aka Slides).
- Similarly, using the same web applications in hosted google accounts (aka Google Apps), they will be broken out to the various web apps, with the suffix ” – Google Apps”.
- MicroSoft Office Online (aka office.live.com) applications will be broken out as Word – Office Online, Excel – Office Online, PowerPoint – Office Online.
A little over a year ago, we quietly added a little feature to RescueTime Premium called daily highlights. It was basically just a “notes” section that someone could use to write down what they got done during the day. It seemed like it might be a relatively simple solution to something that had been bugging me for a while – the fact that RescueTime is great for understanding broad patterns in my time use but not so great for looking back at a specific day and remember the meaningful things I did. That’s a situation that comes up pretty frequently for me, and it was frustrating. Adding in a way to log notes about each day seemed like an obvious way to fix that.
I also thought it might be a totally frivolous feature that would never get used. Hence the fact that we didn’t make much noise about it.
In a way, it sort of goes against the RescueTime philosophy. You see, we have a really strong bias towards automatic data collection, and requiring someone to be motivated enough to submit data manually feels like a design flaw. People are busy, and things slip through the cracks, even if you have the best intentions. It’s just hard to keep up with that stuff. If you’ve ever had a job that required you to fill out time sheets, you know what I’m talking about here. In the end, it really doesn’t matter what kind of awesome insights you can offer if there is no data there to analyze in the first place.
But the problem was bugging me so much that it seemed worth exploring. There had simply been too many cases over the years where my imperfect memory would trip me up. Some examples:
- Status meetings where I’m constantly hemming and hawing. “Hrm… um… I know I did some other stuff this week?”
- Performance reviews where I need to be able to speak intelligently about the types of things I’ve been doing over the past 12 months.
- The defeating feeling feeling I’d get when I’ve been juggling so many things for too long and it all becomes a blur. After thrashing around a lot, it’s really hard to tell if I’m being effective or just being busy.
- When challenged by a manager about something that didn’t get done, it’s demoralizing to say “I don’t know, I guess I was just busy with other stuff?”
Sounds like a great idea, except it totally didn’t work
After launching it, we realized it wasn’t working at all. Having written the feature, I was probably the person most motivated to use it out of anyone, and I would go weeks without entering a highlight. I’d just forget to do it. Because I was never really all that confident about how it would be used, I didn’t integrate very heavily with the rest of the reporting, and it felt like there just wasn’t much value in it. I couldn’t even get the other people around here to use it, despite us all agreeing that the general idea was a reasonable one.
A mostly-automated, more ‘RescueTimey’ approach
We experimented a lot over the next few months, trying new things, and learning a lot. Eventually we realized something pretty great. We couldn’t fully remove the need for manual data entry in this case, but we could largely automate away the need to remember to do it. It was a lot more in line with the RescueTime way of doing things, and it seems to be working. Over over 25,000 highlights were logged in 2014, the vast majority in the last few months as we made more refinements.
We ended up with a two-pronged approach for entering highlights:
1. Intelligent prompts: We added the ability to automatically open the highlights entry page at times when there was most likely something that needed reporting. We thought this would be hugely annoying, but after a little tweaking to fit our own working style, the prompts felt a lot less intrusive than we had feared. Actually, they have a nice side effect of keeping us more aware of our productive time each day.
Examples: Prompt for highlights after 2 hours of productive work in a day or send an email prompting for highlights for the previous day first thing the next morning.
2. Data exhaust: A lot of meaningful information already gets entered in other systems that we work with every day. There are a huge amount of logs and notification streams laying around describing work that’s being done, and all we needed to do was tap into it. We added an API to create highlights, along with the ability to group together highlights from the same system. It’s a little work up front, but after that a lot of interesting data can be logged with no additional effort.
We also kept the original method of manual entry page around to cover the cases that couldn’t be handled automatically, but I’ve gotten to the point now where I rarely go to this page without being first prompted by an alert. It’s something I don’t have to think about anymore. It just gets done.
Quantitative plus Qualitative Data is a great combination
After a while we realized that we were all actually entering highlights on a fairly consistent basis, and they were really useful. We tried using them as a base for our twice-weekly status meetings and immediately noticed such a positive change that we haven’t stopped. We can quickly run through our highlights and then spend the rest of the meeting actually communicating about what needs to happen next. It’s way more efficient.
I log all sorts of things now that wouldn’t have been worth the effort otherwise. Knowing when I exercise, go to the coffee shop, or check off items on my personal to-do list all add valuable context. It’s been a really big help for looking back and understanding how I spent my time on a specific day.
We’ve recently beefed up the reporting, exposing highlights more prominently on the dashboard and in the weekly summary reports. This makes it easier to review highlights on a regular basis. We’ve got a lot of other ideas for how to make the reports more useful. We’ll be working those out over the next few months.
If you are a RescueTime premium user, you can get started setting up your highlights here.
For more examples, have a look at how highlights work into a typical day around the RescueTime office.
Highlights have opened up a new perspective on RescueTime for me, and I’d love to know what you think of them. For the rest of January, you can sign up for RescueTime premium for 25% off and try them out (or upgrade here if you already have a free account). Give them a spin, and let us know what you think.
A few months ago we added support for using RescueTime’s Alert notifications within Zapier, a service that helps people automate their favorite web apps.
We found that it was really, really useful, so we’ve added two additional triggers and an action to the RescueTime app on Zapier. These improvements will open up a bunch of new ways to use RescueTime with outside apps.
Daily summaries – daily rollup reports to use in your zaps.
This will make it easy to do things like:
- Create a personalized daily email report showing only the metrics that really matter to you.
- Create a notice when a certain percentage of your time is uncategorized. This notice could be delivered as an email, or an item added to your favorite to-do list such as Trello. Zapier supports over 300 different services, so there are a lot of possibilities here.
- Create a percentage-based alert for any major category. This will let you keep an eye on how much time you spend on certain activities relative to the overall amount of time you have logged that day.
Note: Daily summaries are available to all RescueTime users, new reports become available each day at midnight in your local timezone.
Highlights – a running log of your accomplishments
RescueTime makes it easy to log notes about what you’ve accomplished each day. These are called Daily Highlights, and they can add important context to the application and website time that is logged automatically. Spend 6 hours coding one day? You can annotate that day so it’s more obvious what you got done during that time.
You can now create zaps to automatically log highlight messages when meaningful actions happen in your other systems. This can make logging your status completely effortless. We’ve been using these a lot internally and it’s really made the quality of our weekly status meetings go up by about 1000%.
Some examples of things you can now do:
- Log your GitHub commit messages as highlights. This one addition made the biggest difference for the developers on our team. Basically a part of our existing workflow – GitHub commits – was made more valuable by putting the data into a new place.
- Keep a record of the meetings on your Google Calendar in your highlights list. Meetings can have a big impact on how you spend your time, so it makes sense to keep a record of them. It’s easy to import your Google Calendar events as daily highlights.
- Log a highlight when new blog posts are published. If you work in media and need to keep a record of your posting progress, this makes it simple. This can be done in a zap via an RSS feed or by connecting your WordPress account to Zapier.
- When a Trello card is dragged to the “done” column, log a highlight. This pretty much transformed how I use Trello. It was already a great way to manage what I needed to do, now it’s also a great reporting tool that shows me what I got done.
- Log checkins on Foursquare as a highlight. I really wanted to understand how my coffee intake affects my productivity, so I started logging any checkin to a coffee shop on Swarm as a highlight. Now I can see just how much of a caffeine addict I am.
Some people already have another application where they keep track of their accomplishments, so we also added the ability to broadcast highlights entered in RescueTime to other applications. For example, you may want to keep your ‘dones’ list in iDoneThis in sync with your RescueTime highlights. Or perhaps your team uses a tool like Yammer, and you may want to post a status message whenever you log a new highlight. For us, we send highlights to our “what’s happenin” room in HipChat.
Note: Highlights are a part of RescueTime Premium, to use them you will have to have a premium subscription.
We’re really excited about these new additions, and hope you find them as useful as we have. We would love to hear what you think in the comments. If you’d like to read more about these updates, check out the post about it over on the Zapier blog.
If you aren’t using RescueTime yet, getting started is easy. Just sign up and you’ll be logging time in less than five minutes.
The ability to block distracting websites is one of my favorite parts of RescueTime Premium. It’s so easy to keep bouncing over to momentary distractions when I’m trying to stay focused, and if I’m not careful it can eat up my whole day. At best, work that I’d like to plow through quickly and be done with ends up taking three times as long because I can always think of several things that I’d rather be doing at any given moment. Being able to put up a wall and just block out all those alternatives is a great way to offload my willpower to the computer so I can devote my brainpower to actually getting my work done.
There are a few different ways to use FocusTime, and a few things to be aware of to get the most out of it.
How do I tell FocusTime which sites to block?
The great part about FocusTime is you don’t have to worry too much about compiling a big list of distracting sites you’d like to block. RescueTime already does that for you based on the types of activities that you’ve told it were distracting. The defaults aren’t perfect, but they save you from doing 80% of the work. Just by running RescueTime and telling it “Social networking sites are generally distracting”, RescueTime can figure out what sites you are going to and which ones should be blocked.
There’s one unfortunate side effect of RescueTime getting smarter the more you use it – it actually doesn’t start out with much of a list. If you try to use FocusTime to block distracting websites right after signing up, it won’t be very effective. Give it a day or so to warm up. It generally doesn’t take too long to build up a useful list. You can see a list of which sites would be blocked on the “block distractions” page (you must be logged in for that link to work), which can be found under the “tools” menu on the RescueTime website.
The auto-categorization will hopefully get you most of the way there, but there will likely be some distracting websites that we don’t have a default category for. In those cases, you can just give those sites a productivity score of “very distracting” and they will be blocked next time you start FocusTime. It’s probably easiest to just make sure you don’t have too many items in your “uncategorized” list (click here to view – must be logged in). That way, your preferences for each category will be used to determine which sites to block and you don’t have to worry about individually scoring hundreds of websites as “very distracting”. It may also be helpful to review the productivity levels assigned to each category.
How do I start FocusTime?
There are two ways to start a FocusTime session. Depending on the way you work, one might be better than the other.
Method one: Start a FocusTime session from the RescueTime application menu.
The most straightforward way to start a FocusTime session is to click the RescueTime icon on your desktop. It will either be on the menu bar on Mac, or in the System tray for Windows. Then choose “Get Focused…” and select an amount of time you’d like to block sites for. Click the button and that’s it! Within 30 seconds distracting websites will be blocked. You will receive an alert letting you know when your FocusTime session has ended.
Method two: Start a FocusTime session when an alert is triggered.
Using an alert to kick off a FocusTime session allows you to set some rules for yourself ahead of time, so you don’t have to rely on being motivated enough to actually start FocusTime at a point when you’re already struggling to get focused in the first place. RescueTime has a robust alert system that allows you to take actions when you have spent a pre-defined amount of time on certain activities. When an alert is triggered, you will receive a pop-up on your screen with a message (“You have spent more than 2 hours on Facebook today, Robby!”, for example.) In addition to the message, you can also optionally tell RescueTime to block distracting websites for a while. This is a great way to give yourself a good amount of freedom, but then automatically put up the productivity defenses at times when you really need them.
Six scenarios where blocking websites makes a whole lot of sense:
1. You’re using the Pomodoro Technique
The Pomodoro Technique is essentially working in 25 minute intervals, then taking a short break to recharge. It’s similar to how you might workout at the gym. You can use RescueTime to reinforce your focused intervals. Block sites for a 25 minutes of focus, then take a break for a few minutes. When you’re ready, start another session. See how many you can do in a day.
2. You are working on writing a novel (or any other long term project that requires long periods of focus)
Every year, National Novel Writing Month participants go on a writing marathon and attempt to complete an entire novel in just 30 days. We’ve done some analysis of some successful writers and found that working on a set schedule really helps. You can set up a daily period that’s devoted to writing and block all distractions during that time. (Note: You will need to create a custom time filter for this alert to work. You can do that under “advanced filters” under the “tools” menu)
3. You find yourself spending a lot of time on Social Networks when you feel like you should be working
Set an alert to give yourself a 30 minute FocusTime session after 1 hour on Social Networks to snap you out of it.
4. You want to start the day off as productively as possible
When you first start working in the morning, block distracting websites for 15 minutes to avoid starting the day off unproductively. You can do this manually, or create an alert that will do it for you. (Tip: Use the “when” dropdown when creatign the alert to restrict the time of day this happens. You could create one for just weekday mornings, after lunch, etc…).
5. You’d like to nudge yourself away from the computer after a particularly unproductive day
Sometimes I get to a point where I’ve fallen down such a distracting hole that the only thing that makes sense is to get up and move around for a while. You can block distracting websites for the rest of the day after 5 hours of unproductive time in one day.
6. You’re trying to get better sleep, and don’t want to spend so much time on the computer late at night.
You can block distracting websites between the hours of 10pm and midnight to help you get off the computer late at night.
Hopefully this gives you a good starting point for how to use FocusTime to help keep distractions in check. If you have any other scenarios where FocusTime is helpful, I’d love to hear about them in the comments.
You can now use your RescueTime Alerts to automate your favorite web applications, thanks to our new integration with Zapier.com.
Say what? Probably easiest to show some examples. Here are a few things we’ve been doing around the RescueTime offices that illustrate some of what you can do with this integration.
1. Deliver alerts differently than the standard popup messages or emails
2. Automatically share time milestones as status reports
3. Log alerts as datapoints for future Quantified Self analysis
4. Poke fun at ourselves for going on workaholic binges while getting this integration done!
Zapier allows more than 280 web applications to speak to each other
Zapier is a web service that makes it easy for non-developers to connect their web applications together, saving time and improving productivity. They connect with over 280 different services, including several of the most popular project management and communication services, such as Basecamp, Asana, Podio, Yammer, iDoneThis, and HipChat to name a few.
How does this work?
When you connect your RescueTime account with Zapier, we will make a special feed of your alerts accessible to them. Then you can set up any of your alerts to trigger an action in Zapier. This can be used to log a block of time, send a status message, or add a note to a calendar. You can even send a humblebragging tweet about your horrible work-life imbalance. A more technical explanation can be found here.
How do I get started?
Alerts - and consequently the alerts API - are only available to RescueTime premium subscribers. But to make it easier to give them a try, we’re offering premium subscriptions at 25% off the normal price until May 31, 2014. Click here to upgrade so you can get started.
First, make sure you have some alerts set up, then head on over to Zapier.com and start creating zaps. If you need any help, check this help document or open a support ticket with us and we’ll be happy to help.
Let us know what you think, ok?
The great thing about Zapier is it puts you in control of your data without relying on us to do tedious one by one integrations. Play around with it. Have fun! Do amazing things! If you find something that’s really working for you, please let us know so we can share the knowledge!