Don't Rely on Memorization
As someone that came to my career in tech late, I’ve been challenging myself to ensure I’m learning as much as I can at any given moment. However, it’s a difficult balancing act1 to continuously learn while also maintaining my overall health and my most important relationships. Here are two things in particular that I’ve been trying to do as I endeavor to improve my craft:
-
Focusing more on exposure to the material and less on remembering the material As of late, I have found that concerning myself with remember everything or, hell, even most things I’m consuming is not worth the effort. In conversations with others in software engineering, as well as folks in other fields which require lots of continuing education, this topic comes up a lot. So one thing I’m trying to do (and be okay with) is consuming the same material repeatedly with less focus on attempting to remember them2. This does not mean I’m not actively listening and engaging with the material, but I am not using as much of my mental focus on producing mechanisms for remembering the material (e.g., flash cards, spaced-repetition apps, etc.). This is beneficial because a lot of times when I first hear of an idea, I don’t have a mental construct for how it might be useful to me. However, it is very likely that the next time I encounter it I will have come into contact with some other subject matter which has built out some of the required scaffolding for that initial topic, which then makes it significantly easier to remember. Let’s call this “lazy-spaced-repetition.” 😋
-
Finding resources that synthesize a topic or category of topics: I will expend a fair amount of effort to find resources which are adept at synthesizing the specific knowledge I am seeking. This might seem counter intuitive, but for me investing this time has paid huge dividends. The reason I have found this beneficial is because it is a rare individual who is very skilled in synthesizing just a single topic. What is much more likely is that said individual has a knack (or practiced aptitude) at synthesizing information very well and it’s especially likely that they have synthesized other knowledge which I’m seeking. So a single resource can become a well of useful information which more than makes up for the effort expended in finding the resource. This tactic could be construed as the explore-exploit trade-off3 that’s common in a lot of domains and often comes up in computer science as well. Lately, the most valuable resource I’ve come across in this regard is the Book Overflow podcast4. The hosts are reading through some of the most recommended books in computer science (or computer science adjacent) and synthesizing them down in an interesting and very useful way5.
I hope these ideas prove useful to others.
Footnotes:
1. A tool I’ve been using to help with the balancing act I described above is to keep a [list of the most common regrets](https://en.wikipedia.org/wiki/The_Top_Five_Regrets_of_the_Dying) of the dying at the forefront of my mind ↩️
2. https://www.columbiapsychiatry.org/news/why-forgetting-good-your-memory ↩️
3. https://en.wikipedia.org/wiki/Exploration-exploitation_dilemma ↩️
4. https://bookoverflow.io/ ↩️
5. A small note on Book Overflow and why it’s been valuable to me:
What is most beneficial to me is that they synthesize the material at a coarse-grained level which leaves some effort to the listener (i.e. it would still be worth reading the books discussed). Instead of a book report or cliff notes podcast, they’re touching on topics they found valuable, providing their overarching thoughts of the book, and (pivotally) articulating how this book would be valuable and to whom. The 3 recent episodes on “Working Effectively with Legacy Code” are a perfect example of this. ↩️