Andy Matuschak's Evergreen Note System On Roam
Joshua Mitchell / March 28, 2020
14 min read
What Is It?#
Fundamentally, it's a note taking system designed to help insights accumulate by making notes useful and worth building on top of.
In traditional note taking systems, you spend most of your time pigeonholing notes into categories (you'll still probably have trouble finding them) and merging duplicates (to keep yourself sane).
In the Evergreen System, you spend most of your time doing "productive" work, like fleshing out your ideas and connecting the dots. The organization takes care of itself.
The Problem with Existing Note Taking Systems#
A tweetstorm from Conor White-Sullivan (CEO/Founder of Roam Research) on why current note taking apps aren't getting the job done:
Another excerpt from The Roam Whitepaper on why current solutions are inadequate:
Why the Evergreen System Is a Better Solution#
The value proposition in three sentences:
In the past, to formulate new ideas, you had to start from scratch to connect everything into a cohesive thought process.
With this system, you save all that work you've done in the past into a form usable for new work. All you have to do is build on top of your existing knowledge base and add a few connections.
From Andy Matuschak's notes:
This is the story of a folder-based note taking system: it's likely that all of these prerequisite ideas are strewn across different folders as sections of different files.
However, in the Evergreen notes system, you've already thought about all those ideas and crystallized them into notes that all connect to each other. Having insights becomes much more feasible because you're building incrementally on top of a strong foundation of ideas (as opposed to waiting for the stars to align).
How Does It Work? How's It Different?#
Long story short: each note is meant to be Evergreen.
Properties of Evergreen notes:
- Atomic: Evergreen notes should be about one thing, and flesh out that one thing well.
Why atomic?
When you make a note of something, it's assumed to be important, which means it should be
easily findable (no broad notes), and
easy to build on top of (no fragmented notes)
If a note is broad (i.e. contains more than one concept), it makes finding any concept contained in that note harder (since you have to sort through concepts).
(This is "solvable" by storing an additional copy of just that one concept somewhere else, but if you do that, why not store just the concept to begin with and refer to it from within the broad note to avoid duplication and extra note maintenance?)
If a note is fragmented, it's hard to build on top of. Building on top of it requires fetching the other pieces, which introduces friction and fragility. If, every time you fetch a fragment you have to fetch the other pieces, why not store them in the same note and make it self-contained?
Note: This is very similar in principle to the software engineering concept of loose coupling (low inter-dependency) and high cohesion (high intra-dependency). More info about what that means here.
- Well-titled: Atomic notes act as building blocks, and a good title acts as a handle for grabbing the idea and moving it fluidly to wherever it needs to go.
With atomicity and a good title, you can treat Evergreen notes like APIs: "on-demand" concepts.
- Concept-oriented: Evergreen notes should be as concept oriented as possible for 3 reasons.
Concepts can manifest across different domains. When your notes are concepts, they're easier to find and reference in future notes.
Concepts are "evergreen" in the sense that they're pure. They're not biased towards a particular domain, point of view, or time period. Thus, in theory, any note on a particular concept should only change if you learn more about the concept. Other than that, they're sturdy building blocks for other ideas.
Concepts are the most "bang for your buck" in terms of note taking. They are, in theory, the most general Single Sources of Truth in existence. They're an answer to the question, "What's the largest overlap between all of these things?"
- Densely-linked: Concepts don't exist in isolation - they're compositions of other concepts.
The more connections you find, The more the value of your network of ideas grows. In fact, actively pursuing connections between concepts creates pressure to think carefully, foster learning, and discover insights.
In this system, organization isn't decided beforehand - it happens organically (through association). Ideas build on each other in unexpected ways and insights happen when you least expect them. This system is flexible enough to support that.
Roam Research#
Roam is a note taking tool for networked thought. Its key distinguishing feature is the ability to bidirectionally link notes to each other. For example, if you link to note B from note A, then you can go to B from A, and when you're on B, you'll see that A linked to B.
Check out the Roam White Paper for a demo.
Anecdotally, I first discovered it on Nat Eliason's blog. I now use it as my primary idea database, although it does have functionality for other things. (I also use it as a to-do list, a calendar, and a journal.)
During undergrad, I took notes but never looked at them again. I had a latent "distrust" for them. In the back of my mind, I knew they weren't complete - that they were just going to be step 1 in a wild goose chase towards understanding. It didn't occur to me to update my notes because it seemed pointless: I'd have to update them "everywhere," but I had no idea where "everywhere" was.
Now, I don't have to do the leg work of finding notes to update. I just stumble upon them naturally and update them as needed.
Implementing the Evergreen System on Roam#
Creating a Roam Research Account and Using Roam#
You can make an account on the Roam website. Once you've made an account, there are a few options for learning how to use it:
The Demo Videos - A free quick-start guide for using Roam.
Nat Eliason's Roam Course - A paid course walking you through all of Roam's features. I bought this course. I'm satisfied with it and would recommend it (I don't get any referral fees). That being said, I didn't do much research trying to find free alternatives, so it's possible you could find the same information elsewhere. YMMV.
Creating an Evergreen Note#
Caveat: If I had generalizing and relating information down to an exact science, I'm pretty sure I'd be 1 step away from inventing true AI and starting a Singularity event. :)
To my knowledge, it's not an exact science. However, I can give you some examples as a jumping off point.
Remember: we want our notes to act as flexible (concept-oriented) building blocks (atomic) that are frictionlessly reachable from related ideas (densely-linked) through reasonable handles (well-titled).
Some categories of Evergreen notes from Andy's site:
- Arguments:
- Systems:
- Ideas
- Objects
- Advice
- Observations
Another tip: Keep associations as fine-grained as possible. In other words, lots of atomic notes with many inline connections is preferred to bloated (non-atomic) notes with few "foot-note" style (coarse-grained) connections between other notes.
Using Your Notes to Write More Notes, Papers, Essays, Etc.#
I liked Andy's thoughts on this, so I'll pull another excerpt:
A naive writing process begins with a rough inkling about what one wants to write and a blank page. Progress from this point requires an enormous amount of activation energy and cognitive effort: there’s nothing external, so you must juggle all of the piece-to-be in your head.
By contrast, if you’ve already written lots of concept-oriented Evergreen notes around the topic, your task is more like editing than composition. You can make an outline by shuffling the note titles, write notes on any missing material, and edit them together into a narrative. In fact, because you can create speculative outlines while you write, you might find that the first of these steps is already accomplished, too. And writing each note isn’t hard.
Instead of having a task like “write an outline of the first chapter,” you have a task like “find notes which seem relevant.” Each step feels doable. This is an executable strategy (see Executable strategy).
I describe two approaches here: an undirected version, in which writing projects emerge organically from daily work; and a directed version, in which you’re trying to write about something specific.
Undirected version:
- Write durable notes continuously while reading and thinking. (Evergreen note-writing as fundamental unit of knowledge work)
- Each time you add a note, add a link to it to an outline, creating one if necessary (Create speculative outlines while you write).
- Eventually, you’ll feel excited about fleshing out one of those outlines. (Let ideas and beliefs emerge organically)
- Write new notes to fill in missing pieces of the outline.
- Concatenate all the note texts together to get an initial manuscript
- Rewrite it.
Directed version:
- Review notes related to your topic (and a step or two beyond those - Notes should surprise you).
- Write an outline.
- Attach existing notes to each point in the outline; write new notes as needed.
- Concatenate all the note texts together to get an initial manuscript.
- Rewrite it.
One other nice benefit of this approach: Evergreen notes lower the emotional stakes in editing manuscripts.
Questions I Still Have:#
Should every note to be Evergreen?
- Is there an advantage to having some notes that aren't Evergreen?
- Are there some notes that intrinsically are not Evergreen?
How does one measure Evergreen-ness? I can think of several metrics:
- usefulness: How many notes does it act as a building block for?
- generalizability: How many different types of notes is this a building block for?
- robustness: How many times does this note need to be updated?
- accessibility: How easy is the note to understand? How easy is it to find relative to the notes it's related to?
What's a good system for cleaning your knowledge database (e.g. removing duplicates and replacing with references to Evergreen notes)?
Andy has a note that says tags are an ineffective association structure. Could tags still work beneficially here?
Could we just think of tags as cupid matchmakers for various entities?
In other words, tagging is the first step to creating associations. At first, it goes
entity 1 <-->
tag <-->
entity 2
Perhaps the second step is a pass through everything you've tagged, and ask,
entity 1 <-->
entity 2?
This could be seen as a coalescing step. It might be the case that a small part of entity 1 is related to a small part of entity 2. We could refactor our notes to take out the one concept in common with entity 1 and 2, make it into an evergreen note, and then link to the evergreen note from entity 1 and entity 2.
Perhaps, eventually, after repeated iterations, any large entity (blog post, article, etc) will eventually be a composition of evergreen notes. It'd be like when all the kids talk in nothing but memes.
What does graph theory have to say about organizing information into knowledge graphs?
- Are there any theorems or lemmas that discuss "optimal" graphs with respect to knowledge?
- So far we've used links to indicate "related" - are there ways to extend this? What about different types of edges or links?