Watch this week's video on YouTube
How do you keep track of your daily work accomplishments?
If you are like me, you wait until the end of the week and then dread having to think back all the way to Monday to try and remember what you did that week. By that point all I usually remember is what I ate for breakfast that morning and the immediate problem I was working on before doing my weekly writeup.
I wanted to get in the habit of better documenting my work accomplishments, so I built jurn, a command line tool to help tag and log work as you do it. It has made tracking my work easier, making it simple to share progress in stand-up meetings and invaluable for end of the year performance evaluations.
In this post I will show you its most important features and how I use it.
Install
jurn
is a command line tool I wrote in Python. To install, you just need to run pip install jurn
. You can also modify and build from the source code hosted on GitHub.
jurn
stores its data in a local sqlite database, meaning no one else ever sees your data and you can query the data yourself if you have other needs for it that jurn
doesn't currently support.
Logging
Whenever I want to log an accomplishment throughout the day, I simply use the jurn log
command to save it:
jurn log -m 'Wrangled cats via lasso.'
If I want to add some organizational structure to my notes, I can also include tags:
jurn log -m 'Wrangled cats via lasso.' -t 'Physical Fitness'
jurn
also comes built in with tab complete functionality for tags, so if you type in:
jurn log -m 'Wrangled cats via lasso.' -t 'Physical <TAB>
jurn
will get a distinct list of your previously used tags from the database, helping you pick the right one to autocomplete with:
Physical Fitness
Physical Security
The tagging system also allows for subcategories denoted by the #
sign, allowing for even more organization:
jurn log -m 'Wrangled cats via lasso.' -t 'Physical Fitness#Cardio'
NOTE: To enable autocompletion, you must add this to your
~/.bashrc
.
eval "$(_JURN_COMPLETE=bash_source jurn)"
If using other shells, please reference the Click documentation for the specific line you need to add.
Viewing Entries
Once it's time to reflect on what you did for a particular day (or week, month, year, etc..), you use the jurn print
command to get a pretty printed version of your log entries:
jurn print -d week
2022-11-01 to 2022-11-07
• Physical Fitness
• Cardio
• Wrangled cats via lasso.
• Strength
• New PR benching 2 mules.
• Physical Security
• Installed new locks on the doors.
• Added storage to camera recording devices.
Now you can easily share with your self/boss/team what you worked on. Come performance evaluation season, you'll also have a nice reminder of what you did all year that justifies your raise or promotion.
Automation
While running the jurn
command whenever I finish a note-worthy task is quick and easy, I don't trust myself to always remember to do it.
Instead, I add a line like:
jurn --early-end 60 log -t
to my ~/.bashrc
in order to have jurn
remind me to log any accomplishments every time I open a new terminal tab/window (which I do all day long).
To prevent it from being too annoying, I pass in the ---early-end
option so it knows not to prompt me for my updates if I have already written one in the past 60 minutes.
...And More
I built jurn
to fulfill the needs I had with keeping track of my work accomplishments. All of the tool's various options can be found by running jurn --help
or viewing jurn's documentation.
If you've read this far, I assume you value keeping track of your daily work progress and I hope you can use jurn
to make that process a little bit easier.