By: Michael Nielsen, November 23, 2022
I've done a lot of work on memory systems – as a user, as a researcher, and as someone helping develop new systems. I've found them tremendously helpful. But I also believe they could be made far better. In the following notes I riff on a few dozen1 ideas for how they could improved. I expect most of the ideas work poorly, or need substantial iteration, or would only work in concert with other ideas. But perhaps a few of the ideas would, with some work, make memory systems much better. Feel free to riff on these ideas, and build them into your systems.
A note on provenance: Many of these ideas are pretty obvious to anyone who has seriously used memory systems and read into the literature on human memory. I'm certainly not trying to claim any sort of priority. A few of the ideas are perhaps new and insightful; if that is the case, then credit certainly belongs in part to Andy Matuschak, with whom I've spent hundreds of hours talking about memory systems.
Assumed audience: These notes are intended for my consumption and for the interest of a few friends. I'm writing the notes mostly to organize and stimulate my own thinking. That said, if anyone else is interested: the notes assume you've engaged in substantial (100+ hours) use of memory systems, including significant use for conceptual understanding, beyond cases like remembering words in a new language. There are many misconceptions commonly held by people who've merely briefly tried memory systems: I deliberately haven't addressed those misconceptions. I've also previously stated many opinions about the design of memory systems, and for the most part won't repeat those. That said, there's a few background remarks worth making:
I don't like the common spaced repetition framing: One common framing for memory systems is as "spaced repetition systems" (SRS). I've used that framing myself. But spacing and repetition are only a small part of the story. The larger point is that the way our memory (and our cognition in general) works is moulded by the systems we interact with. By designing those systems carefully we can radically change and improve the way our memory works. It's not just about spacing or repetition.
What's wrong with existing memory systems? Here's a very non-exhaustive list: take too much time; get boring; not vivid enough; not emotionally engaging enough; the tests aren't demanding enough; not social enough; not closely enough connected with other parts of your life; they tend to be for disembodied facts, not for real practice of skills (e.g., motor and sensory and social and emotional skills); the cues don't correspond to actual situations of use; they don't do anywhere near enough to support deep processing of material2; people tend to lean overmuch on remembering facts, and not enough on constructing abstractions and multiple ways of understanding. Many of these ideas can be phrased more affirmatively as questions:
Standard critiques: There are many standard critiques of memory systems. Common ones: "rote memory isn't the same as understanding" [has a large grain of truth, irrelevant if the system is used well]; "I used it to memorize stuff that I've little real interest in" [incredibly common: you should stop using memory systems!]; "I used it to memorize things as a party stunt, and found it boring" [ditto: stop]; "they didn't work for me" [often means they're being used poorly, like attempting to play a violin with your feet, or the person has no need for them]. While I've listed standard retorts, those questions are also useful stimuli. Are there ways of making the questions less relevant or even irrelevant3?
The cliched ideas for improvement: The three most common affirmative responses to memory systems from programmers learning about them for the first time are: "I'll bet you could use ML to automate question construction, for more efficiency"; "why don't you integrate your note-taking and your memory system"; and: "why don't you improve the scheduler?" These ideas (and a few others) are cliches, and I have a bad habit of rolling my eyes at them. This is a mistake on my part. It's true that naive attempts to do these things have limited returns. But deeper thought and riffing may yield genuine returns. In listing ideas below I've consciously tried to lean into them, rather than avoiding them.
Memory is not the point: The point of using memory systems is to make a better life, not memory in and of itself. To momentarily switch to a different type of tool, one common phenomenon with note-taking systems is that they become ends in themselves. I know people who can talk for hours about their note-taking system, but don't seem all that interested in using it to improve anything else in their life. I suppose it's a fun hobby, and that seems fine, but I do wonder at the motivation. Is it system building as self-soothing? This kind of thing seems less common with memory systems (so far), but it's easy to imagine happening.
Many easy-to-measure things are relatively unimportant; many important things are hard-to-measure: Much work on "improving" both commercial products and academic research is focused on things which are easily quantified. Finding the "optimal" schedule. Studying people's memory response curves. And so on. This is the classic mistake of focusing on what you can easily measure, but which isn't all that important. In my personal memory practice, nearly all the benefit has come from learning how to: better digest material; make better questions and answers; better connect the memory system to my life and creative work. These are hard to quantify – it's likely difficult to write academic papers about these kinds of things, or set OKR's for your next performance review. But I suspect such difficult-to-quantify targets are far better targets if you actually want to improve memory systems, and not merely hit your OKRs.
"What does a memory system look like for a driven creative genius who is an expert with the system?" That is, I think, the right prompt for working on memory systems. Software design so often focus on the first few hours of someone's experience. Yet what you really want is to max out the experience someone is having in their thousandth or ten thousandth hour of use. Pianos seem designed primarily for experts and only incidentally for beginners4. If you were designing the piano with modern software design practice in mind it would have 8 white keys, no black keys, and no pedals. It'd be easy to play some simple songs, and that's it. What we're really looking for is ideas which can be the foundation for long-run improvement, with an extraordinarily high ceiling.
Simple-but-powerful ideas, with a very high ceiling: 90% of the value of Anki comes from simply showing you prompts-and-responses on a variable schedule, with the schedule controlled by binary choices you make. It has a tonne of extra bells and whistles, but they're almost all irrelevant. What other similarly powerful ideas are there? Put another way: below I riff on dozens of ideas. Exploring all would be fun. But I suspect that building a better memory system means just identifying and doubling down on one really powerful idea5.
I found myself curiously conservative in constructing this list: I want the ideas to be "good" ideas, which is in tension with them being imaginative or stimulating. Once I noticed this I deliberately added a half dozen somewhat "silly" ideas, sprinkled through the list.
Thanks to Andy Matuschak for many stimulating conversations about memory systems. Thanks to Sebastian Bensusan for encouragement to be discursive in footnotes.
Michael Nielsen, "Building a Better Memory System", https://michaelnotebook/bbms/index.html, San Francisco (2022).
I won't be precise in the number: I may add to or subtract from this list in the future.↩︎
I suspect this is a 100x (or much more) effect.↩︎
Something I like about the "make memory a choice" framing is that it's relatively value neutral. People have strong feelings about memory: that it's something they "should" be better at; or feelings of resentment. They also believe many misleading things about the role of memory in cognition – it doesn't matter, they can look everything up; that anything they need to remember they will just naturally remember through use; or conversely they overly venerate or rely on memory. There is a grain of truth in some of these ideas, but without significant caveats they're damaging. For memory systems to be most useful it's helpful if their use is founded in accurate beliefs about the role of memory in cognition. Indeed: effective use of memory systems sometimes means not using them. But it can also mean using them extremely intensively. The trick is to have an accurate and strongly felt internalized model. A major challenge in communicating about memory systems is helping people form such a model.↩︎
I'm not sure of this, though it seems plausible. I'm more sure of it for, say, the violin (despite the fact that I took piano lessons for a while, but never the violin). Anyone who has ever had a family member learn the violin knows that it is not an easy instrument to learn.↩︎
This is true of almost all our most powerful tools for thought. Writing, the alphabet, mathematical notation: all are founded in taking extremely seriously a small number of powerful ideas. And, again, you can keep getting better for thousands of hours. We teach five year olds to write, but no-one ever really masters writing.↩︎
Obviously, there is potential for abuse here. But there's likely a positive possibility too.↩︎
I Ankified the California DMV manual in order to pass the exam. I then deleted the deck, something I rather regret, as it means much of the manual's content has decayed in my memory.↩︎
I suspect a real problem is that people take suggestions more seriously if they believe it's coming from another human being, as opposed to a large language model.↩︎
One strategy I like that drives many others is to compress understanding. Eg: "What's a simple one-sentence proof of the fundamental theorem of algebra?" Such questions typically require dozens of other questions as preparation first. They're not always achievable, but I find them incredibly valuable. Note, incidentally, that that question violates another master strategy, which is to beware canonical answers. The essentially unique answer to the question "What is the capital of Australia?" is "Canberra". But most interesting questions have multiple answers, and it's extremely valuable to lean into that. A better question is: "What are two [three, four…] different simple one-sentence proofs of the fundamental theorem of algebra?" And then to add some questions about the relationships between those proofs.↩︎
Experience tells me some people will howl "oh, that sounds terrible, why do you have to take a meal and ruin it". Well, don't use the memory system if that's the case. And if it would make your life better, then use it.↩︎