👋 This post is heavily inspired by

Until a few years ago, I didn’t spend much time reading. Today, I spend a few hours every week reading, amounting to somewhere around thirty books a year. In this post, I document my approach to reading.

The post is divided into a section for each part of my reading process: (1: Finding & Choosing), (2: Reading), and (3: Processing).

1. Finding & Choosing

How I find and choose books to buy and read is dominated by a few broad high-level goals or factors:

A. Building ‘Cultural Literacy’

B. Increasing domain-specific expertise and competency

C. Developing a useful mental model of how the world works, and how it could change

D. Socialising

Perhaps notably, I’ve not included anything like “enjoyment” in the above. I definitely enjoy reading, but at basically all times instrumentalize books. I read to help achieve some goal, and that goal isn’t pleasure. I’d never search out books that are the “most fun” to read, and won’t be dissuaded from reading some good book because it is notoriously difficult and dull.

A: Building Cultural Literacy

Cultural Literacy (CL) is the ability to understand and participate fluently in a given culture. There’s the social culture I live in, but also software culture, business culture, finance, literary, philosophical, film, music, fashion. Building literacy in many cultures allows me to learn from them, participate in them, and contribute to them.

Foundational reading in many areas

The goal of building CL affects my reading choices when I notice in myself a lack of literacy in some culture that’s relevant to me. In the past this has been a culture like finance, so I read books like The Intelligent Investor by Benjamin Graham, Freefall by Joseph Stiglitz, Treasure Islands (about Offshore Banking), and Liar’s Poker (about 80s Investment Banking).

When unfamiliar with a culture that I want to learn more about, I heavily rely on ‘Best Of’ lists. Reading the greatest-of-all-time in something is I think the most direct and efficient introduction to a new culture’s written content. I also use ‘Best Of’ lists with TV shows, movies, and music. Here’s one ‘Best Of’ list that I’ve referred to quite a bit recently (a ‘Top 100’ list).

This use of ‘Best Of’ lists is also closely related to my desire to read ‘the classics’. The dozen or so centuries of English literature is an enormously valuable endowment, and I think it’s kind of dumb to neglect it, like being offered the entire gold city of El Dorado and turning it down for some new gimmick like a shipping container home. My brother is working his way through the classics too, so that overlap is a bonus (see goal D, Socialising).

B: Increasing domain-specific expertise and competency

The second high-level goal, about domain-specific expertise, mostly comes into play when I’m trying to improve in my vocation, software development. When selecting for domain-specific knowledge building, I still heavily rely on generic ‘Best Of’ lists and discussions. The books in those ‘Best Of’ lists are reliably pretty great, and are long enough that it’ll take me years to finish everything in them. My favourite ‘Best Of’ books list in software engineering is

I also lack domain expertise in the more general disciplines of natural sciences, social sciences, arts, and humanities, commonly grouped as the Liberal arts. The Liberal arts were born from the Greek desire for a “universal understanding”, and I find that kind of foundational, universalist perspective on education quite attractive, and partly missing from my formal education. I have completed university coursework in sociology, philosophy, and mathematics, but all that wasn’t even halfway close to a proper education in the Liberal arts. To roughly assess my engagement with the Liberal arts, I look at this ‘Great Books’ list from a well known Liberal arts college.

A network of books

C. Developing a useful mental model of how the world works, and how it could change

The third high-level goal, about developing a mental model, encourages me to think about the connections between the books that I’ve read and are thinking about reading. I visualize my reading background as a network of interrelated facts, ideas, and writers, and figure out where I’m missing connections in the network. As an example, I understand software development well, politics reasonably well, and I understand the basics of economics and finance, but I don’t have a strong enough idea of the politics and economics of Silicon Valley, the mecca of software. In order to build connections in this area of my mental model I’m looking at getting Bit Tyrants and Free Software, Free Society: Selected Essays.

To take a different angle on how ‘mental model building’ directs me towards books, here are some questions whose answers I’d like incorporated into my mental model:

  • How do macro-scale changes in the economics of computer hardware end up motivating re-builds of key software architectures?
  • How will Gen Y and Z respond culturally and politically to the chronic climate-change-driven environmental crises that will become undeniable around when those generations assume political and economic supremacy (~2045)?
  • How did Silicon Valley’s strong right-libertarian streak develop, given the computer revolution’s early innovative energy was largely far-left and anarchistic?

A final angle on the ‘mental model building’ goal is how I seek to copy others who I think have built useful and readily exploitable models of the world, like Ezra Klein of and Ben Thomson of Stratechery. I see these two guys as having built up models in US politics and ‘Corporate Tech Strategy’, respectively. They can seemingly take new events and ideas and feed them through their models, spitting out thoughtful analysis readily and consistently. Both seem to have ingested a shitload of information and knowledge in their respective domains, and I think of myself as in some way trying to do the same.

D. Socialising

The final broad goal, socialising, is maybe the most significant influencing goal because it sees me reading books that are unanticipated. I read books recommended by people I talk to, because they recommended them and because it’s much nicer to talk about books when your peers have read them too. I also read the books others give me as gifts, and although people are increasingly using my Goodreads ‘To Read’ list to pick gifts for me, sometimes I still get one that’s off my radar.

I’ve now mentioned my Goodreads ‘To Read’ list, which is my current method for organizing books I’m thinking about reading. Goodreads works fine for now, but it recently deprecated it’s public API and broke a CLI application I wrote and used, and will likely become increasingly user-unfriendly. I’ve started looking at migrating to LibraryThing but my initial impression is that LibraryThing has really bad UX, even worse than the Goodreads website.

What would I like to improve about my finding & choosing

Overall, I’m satisfied with this part of my reading pipeline. I rarely find that a book I’ve bought or even read has not been worthwhile. One thing that I’d appreciate is having a better record of why the particular books that end up in my pipeline got there. I read Constructing The Political Spectacle, which is not a popularly read book, and can’t for the life of me remember why I put it on my list.

In future, I may want to be more sophisticated with how I manage breadth vs. depth in my reading, but it’s years too early for that I think. Right now I’m pretty squarely focused on what I’d consider the ‘foundational layer’ of classics and greatest-of-all-times. Once that foundational layer is sizeable and without key gaps, I can be more considerate about biasing more towards breadth or more towards specialisation.

2. Reading

I am not a person who reads just one book and reads it uninterrupted from start to finish. Typically I’ll be reading two maybe three books at once, though one will be the focus. I also start and abandon books quite often, but usually pick them back up and finish them eventually. Currently I have over ten books that I’ve started reading and abandoned, but intend to finish.

While I’m reading a book (almost always a physical copy) I occasionally will highlight things or write a small note in the margins, but otherwise I’m doing nothing else. This is quite different to the author that inspired this post, Simon, who is doing a bunch of things to help with retention that I don’t do.

My main method of ensuring retention and comprehension I practice is talking about what I’ve read. I talk a lot about the things that I’ve read, probably to the extent that I’m occasionally insufferable, but in talking about what I’ve read and things related I’m in an ad-hoc manner actively connecting together, paraphrasing, summarizing, and synthesizing the contents of my reading.

What would I like to improve about my reading

I’d not dispute that I should be re-reading certain books for added comprehension and retention, and taking some sort of notes during the re-read. The reason I don’t do this much is because I’m keen on ‘ticking off’ books I wish I’d read but haven’t yet, so don’t often slow down and return to a past favourite.

The best personal example of re-reading activity I’d like to do more of is what I’m doing on the 3rd read of Designing Data Intensive Applications (DDIA). On the first read I skimmed certain parts. On the second read I read it carefully. On the third read I’m reading it carefully again, but also I’m going through and reading every cited article or paper (which will take a lonnggg time). It’s an odd completionist approach to book reading, but some games, like The Legend of Zelda, and some books, like DDIA, are so well crafted that they reward a completionist approach.

3. Processing

The ‘processing’ I do for books I’ve read is mostly just the talking about and around them, as I mentioned above, but I’d also count my use of as a processing activity. It has been helpful to have a persistent record of which books I’ve read and when I read them. With an ongoing record of my reading for the year, I have the opportunity to do more reflection on past reading, and last year I used this record to write up a retrospective post on my 2019 reading.

What would I like to improve about my processing

I would love for all the books I’ve read, and all the notes I’ve made about them, to be easily searchable. I want this functionality so much that a little while ago I started working on it in the form of a project dubbed Rememex.

I’d like to do a lot more writing which makes use of the reading I do. About a month or so ago I did start in this direction, but between work, reading, and hobby programming I find it hard to take time to write.

Finally, I’d like to pull out key things into flashcards and do spaced-repetition on them. The general goal of this activity would be excellent retention. More specifically, I’d like to be able to replicate the superhuman-like retention abilities of Noam Chomsky, who can recall detail and quotes in interviews like he’s reading them off a page in front of himself. From what I’ve gathered, there’s no magic in Chomsky’s ability, he has simply practiced a life of constant and deliberative reading, writing, and thinking. I believe spaced-repetition has the potential to bring information retention in someone up to a remarkable level. The human brain is capable of ridiculously impressive feats of memorization, so being able to recall a modest amount of quotations and key details isn’t outlandish.

Future Direction

I think I’ll only significantly change my approach to reading once I’ve reached a milestone with regard to goals B and C (listed in the ‘Finding and Choosing’ section above).

As to a milestone for goal B, domain-specific expertise, I use the idea of a ‘PhD of reading’ that I heard from Australian political commentator FriendlyJordies. My domain-specific expertise milestone involves doing a ‘PhD of reading’ in ‘software & computer science’ and a ‘PHD of reading’ in the liberal arts.
I think of a PhD’s worth of reading as around the amount of books you would read in a specific field as a graduate student completing a doctorate, which is very roughly around one hundred books. Of course, it really matters what kind of books get included in that one hundred. It will take me over one hundred times longer to read and understand Computer Systems: A Programmer’s Perspective compared to Of Mice And Men, mainly because to read and understand a single page of the former sometimes takes me over twenty minutes.

So if we accept that one hundred (good) books amount, I’m way off completing it either in ‘software & computer science’ or Liberal arts. I’ve read maybe ~25 books in the former, and ~30 in the latter. For the latter my reference point is the St. John’s College Great Books Reading List. I’m not closely following it, but use it to identify gaps in my own approach.

Once I’ve completed these PhDs in reading I think I’ll have gone a long way to building a useful mental model of the world (goal C). Confirming this should be a matter of exercising the mental model by using it to produce writing. If my mental model becomes solid, it’d be time to make the following significant changes to my reading approach:

  • Take active reviewing, summarising, criticizing, and extending much more seriously, such that I spend 50% of my ‘reading time’ on those active, creative tasks and only 50% on actually reading new things.
  • Do deep study of key books and authors, by reading books about those key books and authors.
  • Settle into a couple of niches or specializations and keep abreast of the new stuff produced within them.

More Tools!

The fact that Goodreads is one of the better and most widely used reading tools around is quite a shame. I think eventually I’m going to get so frustrated with the lack of powerful reading tools that I’ll start to devote more of my time to building them. I think this post, Digital Tools I Wish Existed, contains some good ideas for new tools.

Abstract tools for reading sketch


This is the version one documentation of my reading approach, an approach I have after restarting my reading habit around three years ago. I’m reasonably happy that I have any sort of reading approach. In 2016 I could count the number of books I read on one hand, and what I did read was likely read for university. This year, 2020, I read almost thirty books, and have for myself a reading habit. I’ll tie this post off with a promise to stick to the habit, and come back in a few years with version two of this documentation, where I’m hopefully at a point to consider the changes I described in the future direction section.

You can check out books that I’ve read in the /library section of the site, and I have an ‘Anti-Library’ section as well at /anti-library.

My Goodreads profile is here, though in a year or two I might have left Goodreads for LibraryThing or something else.

Want to get blog posts over email?

Enter your email address and get notified when there's a new post!