Visualising how often I write in my journal

I try to write a daily journal, and I find it useful when I do, but I’ve been struggling to sustain the habit. My journals are an opportunity for reflection and thought, and a way to spot where I should be making changes. If I don’t write a journal, I miss that opportunity.

Last night, I wrote a quick Python script that visually shows me when I’ve been journalling. This is the sort of visualisation I find quite helpful:

Two calendars for 2020/2021. Some days are highlighted in varying shades of pink (2021) or blue (2020). Above the two calendars is the text 'Your last journal entry was yesterday. Keep it up! Your current streak is 1 day.'

Days when I’ve written a journal entry are highlighted in colour, with a darker shade on days when I wrote more.

The message at the top tells me my current streak – how many days up to now I’ve written a journal. I find streaks particularly motivating – once started, I don’t want to break it! – and I’ve used them to great effect when making changes to my fitness and personal finances. I’m hoping to get a similar improvement here.

If you’re interested, you can download my script:

The code is pretty rough and probably won’t work for anybody else’s setup, but it has some ideas I thought worth discussing in more detail:

This code is pretty slapdash, but I’m not going to go back and tidy it up. It works, and that’s good enough for now. Tempting as it would be to keep fiddling, it would just distract me from the greater goal: actually writing my journal.