Edd Yerburgh Software Engineer

How I take notes from technical books

Since early 2019, I’ve been taking notes when I read technical books (see Edd’s notes). Note-taking helps me retain knowledge, shows me what I don’t understand, and creates reference documents I can use in the future.

My note-taking process

When I take notes I focus on one topic at a time. Usually this corresponds to a chapter in a book, like Process scheduling in Linux Kernel Development.

My note-taking is broken down into reading sessions, short editing sessions, and longer editing sessions before I publish the completed notes.

The reading sessions are 20-30 minutes each with a break between sessions. The editing sessions take between 10-40 minutes, depending on how many reading sessions I’ve done since I last edited my raw notes.

When I finish a chapter in a book (normally in 5-10 sessions), I read my notes and see how confident I am in what I’ve written. Often I need to do more research, so I pick a related paper or RFC to read and take notes on (using the same reading/editing approach).

Finally, when I’m happy with the content, I proofread the full notes, add diagrams, and publish them online.

That’s the high-level overview. I’ll go into a bit more detail on what I do in each of the sessions.

Reading sessions

My reading sessions consists of:

  • Reading the book.
  • Adding rough notes to Google Docs on my phone as I read.
  • Summarizing sections in Google Docs as I finish them.

Most of my reading is done on the train to work. My train journey is thirty minutes, which is the perfect amount of time for me to concentrate on a dense textbook. I focus best when I wear noise-cancelling headphones without any music playing.

As I read sections, I take brief notes on my phone. I add page numbers to notes so I can reference them later.

When I finish a section, I summarize the section in my own words. If I haven’t understood the section well enough to summarize it, I make a note of the topic and page number to come back to later.

Editing sessions

My editing session consists of:

  • Adding raw notes to a Markdown file.
  • Editing raw notes into coherent paragraphs.
  • Researching sections I’m unable to explain or am unsure about.

In my editing sessions I convert my rough notes into coherent paragraphs in a versioned Markdown file.

Often, the topics I didn’t understand from the text make sense after I read an alternative source, like a Wikipedia article.

Publishing my notes

I was inspired to publish my notes after finding Sichao’s notes. Publishing my notes gives me a goal to aim for and a reason to ensure my notes are correct. Also, they might be useful for somebody else.

I don’t always publish my notes, if I finish a topic and I don’t think my notes are good, I move the notes back to Google Docs and delete the Markdown file. That’s fine, the process of note-taking alone was beneficial, even if I don’t publish them.

Conclusion

My note taking process is to take rough notes as I read, edit them into coherent paragraphs, proofread, and publish them as articles.

Taking notes has made my learning more effective, and I recommend it for anyone reading technical books that don’t include exercises.