As a developer I find time tracking important. Not only does it provide the basis for a correct invoicing but it is also a great tool when reflecting how well my estimations turned out to be and analyzing where my time goes.
The problem however is that I don’t really like to think about time tracking. For a long time I’ve been trying all sorts of tools to make time tracking a matter of pressing a start/stop button. These tools are great but I still have to think about actively pressing buttons. About one year ago I found Daily which lowers my cognitive overhead and lets me concentrate fully on the tasks I want to accomplish.
Daily for Mac
Daily asks me every once in a while what I’m working on. It also asks me how to log time when I’ve left my computer because of an interruption. You’ll find a review of these and other features for example in this review.
People at Enrise use Jira extensively, including the Tempo Timesheets plugin. Jira is the basis for time tracking. To automate my tracking process, all I needed was a tool that takes the CSV export from Daily and pushes it to Jira.
Pushing Daily exports to Jira
To be able to automate pushing this to Jira I needed the following information:
- Description of what I did
- Time it took
- Reference to an issue in Jira
When logging time with Daily I use the following format:
PROJECT-123 Description of what I did
You can find a script that pushes Daily CSV exports to Jira in the repository dailyapp2jira. Feel free to use and adapt it to your process. My current version is provided “as-is”, you should know what you’re doing when using it. What it does:
- Watching for new files added to a folder, please see
- Reading the new Daily CSV export
- Parsing descriptions
- Pushing work logs to Jira
A result of this automated workflow is that I can save about 10 minutes a day and feel more focused on my tasks. Previously I’ve spent this time on using Tempo Timesheets to log time and think of how long something took because I forgot to press a start button.
There is still discipline required to properly log the work in Daily but for me the combination with the automated push works fairly good. I’m not perfect and sometimes I don’t export the Daily file in the evening – my goal is to have it always up to date and I try my best to keep it like that.
This process might not work for everyone! Please let me know about your experiences with time tracking. I’m happy to learn more.