Awesome Work Journal with Gmail

Keeping a work journal is always in the center of the picture when you read productivity tips.

Writing an one off work journal is easy, keeping it everyday is dead hard.

Despite my need of keep one, I failed miserably in last few years. Then I realize people who succeeded to write everyday are not necessarily more diligent than me. They just found a way to keep a habit that works for them.

Lately, I think I’ve found a way that works for me, with Gmail and an Awk script.

Here is my setup.

1. Zero Chance to Miss Writing a Journal

I send emails to myself every day and every week.

Because I already have a habit to keep my email inbox-zero every day, it is a good idea to “hook” the journal habit here.

Here are 3 emails that I send to myself.

  1. Every Day: What have you done today?
  2. Every Monday: What will you be working on this week?
  3. Every Friday: How are you doing this week?

After I replied them, I snoozed them so they reach my inbox the next day, next Monday or next Friday.

Magically, I never failed to reply to any of them. The incentive of keep the mailbox zero keeps the momentum of keeping my journals.

Isn’t it nice that there is someone who ask you how are you doing every day? Even that someone is yourself.

2. Journal Bullet Points Should Be Concise

The most important thing when writing a journal is to always write instantly once an item is done. Only put down short bullet points because you will have a thousand of them in a year.

I use nvALT to quickly put down my todo in a txt file. I use different bullet points to indicate the type of a note: “-“ means todo at work, “=” means my side projects and “>” means something I read.

In the end of the day, I would clean up the list and reply to my daily reflection email.

Here is an example of what my email looks like:

On Thu, Mar 5, 2020 at 9:35 PM Jake <hi@gmail.com> wrote:

- Solve a notification bug
- Make a draft for thread discussion tomorrow
= Support Swift package management for my open source project
= Write a blog about work journal
> libdispatch efficiency tips from https://gist.github.com

3. Aggregate and Consume Your Journal

The magic happens when you consume the journal.

When I reply to my weekly planning or reflection mail, I aggregate daily emails first.

Fortunately, when copy and paste from Gmail, I get a super clean format. I write the following Awk script for aggression.

awk '/@gmail.com/ { if($5) a = $2$3$4$5; } $1=="-"||$1=="="||$1==">" { print a" "$0 }' $1 | sort -k 2,2 -k 1,1

This script takes the date from each daily email and prepend to each todo or note item. Items are sorted by their types.

Here is an example.

When copied from Gmail, you get something like this:

On Thu, Mar 5, 2020 at 9:35 PM Jake <hi@gmail.com> wrote:

- Solve a notification bug
- Make a draft for thread discussion tomorrow
= Support Swift package management for my open source project
= Write a blog about work journal
> libdispatch efficiency tips from https://gist.github.com

On Thu, Mar 6, 2020 at 9:35 PM Jake <hi@gmail.com> wrote:

- ComposeEditor telemetry review
- Brain storm
= Plank x 100, meditation 10 min
= Fix currency bug for xxz
> Paul Graham: How to write usefully

On Thu, Mar 7, 2020 at 9:35 PM Jake <hi@gmail.com> wrote:

- Ecs setup
- Discuss feature idea with Tiger
= Update App Store screenshots
= Fix a bug for ObjectForm
> Picasso's bull & Steve Jobs

With my script, these emails will be compiled into this nice and compact report.

Thu,Mar5,2020 - Make a draft for thread discussion tomorrow
Thu,Mar5,2020 - Solve a notification bug
Thu,Mar6,2020 - Brain storm
Thu,Mar6,2020 - ComposeEditor telemetry review
Thu,Mar7,2020 - Discuss feature idea with Tiger
Thu,Mar7,2020 - Ecs setup
Thu,Mar5,2020 = Support Swift package management for my open source project
Thu,Mar5,2020 = Write a blog about work journal
Thu,Mar6,2020 = Fix currency bug for xxz
Thu,Mar6,2020 = Plank x 100, meditation 10 min
Thu,Mar7,2020 = Fix a bug for ObjectForm
Thu,Mar7,2020 = Update App Store screenshots
Thu,Mar5,2020 > libdispatch efficiency tips from https://gist.github.com
Thu,Mar6,2020 > Paul Graham: How to write usefully
Thu,Mar7,2020 > Picasso's bull & Steve Jobs

Isn’t this something you can help yourself enormously when writing a weekly / monthly / yearly report?

Posted 2020-03-04

More writing at jakehao.com