My implementation of a personal mnemonic medium

I have implemented The mnemonic medium can be extended to one’s personal notes in my own Note-writing system.

The system works by continuously scanning a set of Markdown files for embedded prompts (see syntax below). Prompts are then considered part of my working set for spaced repetition reviews. I’ve also implemented a component which continuously syncs those extracted prompts to Anki.

Some example notes which include this feature:

For the implementation, see https://github.com/andymatuschak/computer-supported-thinking.

For ongoing unprocessed thoughts, see Log: personal mnemonic medium

Syntax

Creating typical two-sided SRS prompts

Q. How many dimensions are in a qubit’s vector space?
A. Two.

The empty line between the question and answer is optional. The question and answer cannot currently span multiple paragraphs: the paragraph including Q. or A. is extracted as that field.

Creating cloze deletion prompts

In the context of prose notes, I’m finding cloze deletions are often somewhat more natural. This paragraph maps onto a single cloze deletion prompt with three cards:

Once activated, a service worker {performs one-time startup computation}, then transitions to {idle}. From that state, it’ll handle {fetch or message events} until it eventually terminates.

The cloze prompt will use the entire paragraph surrounding the text. For example, this two-sided prompt is equivalent to one of the cards extracted from the previous example:

Q. Once activated, a service worker ???, then transitions to idle. From that state, it’ll handle fetch or message events until it eventually terminates.
A. Once activated, a service worker performs one-time startup computation, then transitions to idle. From that state, it’ll handle fetch or message events until it eventually terminates.

Idempotency and identity

This system is meant to operate idempotently. That is: you can keep revising your note files over time, and it’ll keep track of changes accordingly. As you change your notes, the system will maintain your SRS state for all the embedded prompts, except for the prompts you’ve directly edited.

Somewhat more precisely, the embedded prompts have identity. You can modify the note around a prompt or even move the prompt to a new note, and your review history will be preserved. But if you modify a prompt’s text, it will be treated as a new prompt, and your review history won’t be ported from the old prompt. That’s because this system’s based on dumb plaintext files, which don’t have enough semantic structure to unambiguously specify whether a given modification represents a new prompt or a modification of an old one. Fixing this would require introducing heuristics or extra identifying markup.

Two-sided prompt identities are derived from the hash of their question and answer text. Cloze prompt identities are derived from the hash of their containing paragraph.

While the system will happily track prompts if you move them between note files, the behavior is undefined if identical prompts appear in multiple note files.

Last updated 2023-07-13.

The mnemonic medium can be extended to one’s personal notes

In using a Spaced repetition memory system, you’ll fill it with notes on what you’re learning, observing, and thinking. Unfortunately, Existing spaced repetition systems discourage evergreen notes. A memory system will help you retain and continuously engage with what you write, but it won’t much help you build on those ideas over time. An Evergreen notes system will help you build on your ideas over time, but it won’t help you retain and continuously engage with those notes (outside of Evergreen note maintenance approximates spaced repetition). So you’re stuck either duplicating your efforts messily in two separate systems, or giving up one system’s benefits.

The Mnemonic medium solved a similar problem for published prose: The mnemonic medium gives structure to normally-atomized spaced repetition memory prompts. One can use the same approach to give structure to one’s personal spaced repetition prompts, within one’s personal notes. We can call this a {personal mnemonic medium}.

For example, one could imagine creating a {cloze deletion} prompt within one’s personal notes by {wrapping it in curly braces}.

And one might create a traditional two-sided prompt like this:
Q. If one only took notes in Anki, what key limitations might one experience?
A. (e.g. no serendipitous note-finding when note-writing, no way to easily evolve notes over time, limited connections between notes, difficult to “read through” one’s notes on a subject, etc)

Implementations

There are a few other implementations of something like this idea:


References

Nielsen, M. (2018). Augmenting Long-term Memory. http://augmentingcognition.com/ltm.html

I start to identify open problems, questions that I’d personally like answered, but which don’t yet seem to have been answered. I identify tricks, observations that seem pregnant with possibility, but whose import I don’t yet know. And, sometimes, I identify what seem to me to be field-wide blind spots. I add questions about all these to Anki as well. In this way, Anki is a medium supporting my creative research. It has some shortcomings as such a medium, since it’s not designed with supporting creative work in mind – it’s not, for instance, equipped for lengthy, free-form exploration inside a scratch space.

Last updated 2023-07-13.