I keep a structured daily journal of my activities. I've been doing this for the past several years and think it’s one of the single most useful habits I’ve developed. It’s very time efficient and takes little effort. Some benefits include:
- (generally) always being prepared at stand-ups and meetings
- it’s very difficult to unintentionally drop the ball on tasks
- having the ability to reference specifically what I’ve worked on each day, even years in the past
- generating high level overviews of my work for things like annual reviews, or updating my resume is easy
I have a slightly unique take on what I consider work, so it makes sense for me to have a single entry for both work and personal activities - YMMV. I’ve thought about splitting them up before, but the overhead of maintaining two daily journals has not seemed worth it to me so far.
For me, it’s important for my daily notes to be:
- portable and exportable
- synced to all of my devices
- performant when editing
I've used a variety of tools over the years - in the end I’ve come to the conclusion that it doesn’t really matter which one you use. My personal journey has looked like this:
Emacs Org Mode
I start off each day by writing out what I accomplished yesterday, and what I intend to do today. I carry over unfinished tasks from yesterday into today if they are still relevant. This can take several minutes and is usually done before work starts. The template I use looks something like this:
### Yesterday - fixed route run image generation - ran route run migration - fixed route run duration - added timestamps to mpp - fixed the old admin fields - added the new metrics to the metrics importer - added cb_handle, version, and id to bugsnag api error tab ### Today - [x] fix marketplace build error ¯\_(ツ)_/¯ - [x] aeris weather bug - [ ] continue planning referral program - [ ] touch base with emil - [ ] prep brisket ### Notes ...
Rewriting what I did yesterday is important to me because it often sets up what I’m going to work on today and gives me the opportunity to reflect on how the day went. If unexpected things come up during the day, I’ll add them to today list as a pending or completed task - even if I know I won’t be able to get to it. I’ve found having a rolling task list for each day has worked out better for me than having a single ‘global’ task list or inbox.
The notes section is a scratchpad for everything else that happens that day (meeting notes, code snippets, random thoughts). I extract these out into standalone notes if necessary, but that is not often the case.
I treat Fridays a little differently, they look like this:
### Week Summary ... ### Yesterday ... ### Today ... ### Notes ...
I include a week section to provide a high level summary of my accomplishments that week. I write them in the context of providing a report to a stakeholder, so they are generally only comprised of things that are non-trivial or that I’m proud of. This usually takes a little longer than normal as I scan through the previous week’s notes.
This makes tasks like writing self-reviews (personal and professional) or updating my resume easy, as I can simply scan for the summaries of each week over a given period of time instead of going through every single daily note.
While this system works for me and I’ve been very happy with it, everyone has their own process that works for them. Regardless, I hope it was at least an interesting read!