hr time tracking app
Introducing hr – light and fluid time tracking app
hr is a time tracking menubar app which feels so light and fluid that I’m tempted to call it a utility. I’ve used a bunch of other time tracking apps and have always found them cumbersome. That’s not the case with this app. Incredibly, hr is free. Donations are requested, and in this case, deserved.
There are some issues. I had to visit hr’s website to find the help page. Turns out there’s a keyboard shortcut (command-?) for help, but that shortcut didn’t work. I’d love to be able to access help offline via a menu item.
The help page on the website only shows keyboard shortcuts and the export option doesn’t have a keyboard shortcut. It took me awhile to figure out how to access the export feature. (I’ll walk thorugh how later.)
Categories and Menu
Clicking on hr‘s icon will open the last window you were in. Our first time, it opens to the Categories window. Categories contain Tasks, and Tasks contain Sessions. Initially, All Tasks is the only entry in our Categories window. Below, you can see that I’ve added another category. Create new categories using the button on the lower left (command-n).
The button on the upper right activates the Menu (command-option-m), which includes the ability to change sorting options, set preferences, check for updates, and quit.
The first two preferences involve the menubar icon, which changes when the timer is running: a minuscule blinking play button image is added to the icon, and a timer is shown next to the icon. (I’ll talk about this again a little later and show a screenshot.) You can turn both of these off. I do not find either distracting so I have them enabled.
You can set hr to pause timing when the computer is idle for 5, 10, 15, 20, 25, or 30 minutes, so lengthy interruptions are not included in the task time. You can also change the location of the database.
Double-clicking a category opens the Tasks window. There are three buttons at the bottom of the window: create new task, show/hide finished tasks (command-shift-f) and start.
Checkboxes to the left of each task let you denote which tasks are completed (command-option-f).
The thin colored vertical lines on the left of some of the tasks indicate priority levels. You can increase and decrease priorities of tasks by selecting them and pressing command-minus sign and command-equal sign, respectively.
Double-clicking a task opens a Sessions window (ours is below). (I can’t tell you how many times I double-clicked tasks before figuring out that I had to hit the start button to start the timer.) Use the back button in the upper left corner (command-[) to navigate to a previous window, which we’ll have to do to start the timer (command-s).
The Timer window shows the time of the current session and the total time of all sessions for this task. The pause’s drop-down menu allows you to pause timing in 10, 20, 30, 40, 50 or 60 minutes, allowing you to work in intervals. When an interval is over, hr activates, the timer window appears and the timer is paused.
Switching to another application hides the Timer window, and the hr menubar icon changes as described earlier. (When the timer is paused, the play button image changes to a pause button image.)
Sessions and Task Properties
Stopping the timer opens a Sessions window with the current session in editing mode. To edit a previous session, double-click it.
One of the things I really like about this little app is how it flows. For instance, as soon as we arrive at the Sessions window, the name field is highlighted in case we want to re-name this session. (The default name is “Session”.) As soon as we hit enter, we return to the Tasks window. If we need to edit the time information as well as the name, we can use the tab key to navigate. It’s these little “don’t make me think” touches which make hr such a joy to use.
There are two buttons on the bottom of the window. The first is for the Sessions window (command-1) and the second is for the Task Properties window (command-2).
Here you can set task properties like the category, task description and the priority.
Back at the Tasks window, exporting is easy enough (if not intuitive). Select the tasks you want to export, and control-click to show the contextual menu. (Below, we’re only exporting the hr task.) We can choose the file name and save location. Files are exported as CSV, and include task and session names, start and end dates, duration as time and as decimal time.
Deleting categories, tasks and sessions is easy. Select what you want to delete (command-a for select all, and command-click for non-contiguous) and press delete. A confirmation in red appears for you to confirm. To cancel the deletion, press escape (esc).