On October 5, 2019, I attended a meet-up in San Francisco, the second of two organized by Jeremy Nixon, where about ten of us presented memex projects that we were building. The demos were short, about 15 minutes each, enough to start a conversation, but often not enough to get the full idea.
(A memex is a analog device that enables the user to creates connections between documents. Vannevar Bush coined the term in 1945 in an article published in The Atlantic titled “As We May Think”.)
The following notes are incomplete, filtered by what I thought was important, and in many places will be incorrect, but I hope it provides value anyway to those who were unable to attend.
Jeremy is a programmer at Google, part of their Google Brain team.
Memory is a critical part of intelligence.
One way to improve a thing, is to decompose a thing into its parts, and then improve its parts. What are the parts of intelligence? Some features include processing speed and working memory.
Memory can be externalized. For example, by writing. Writing creates external version of what was in your mind, and is more linear. By imposing structure, you avoid loops/ruts/holes, and can make progress. Get all open loops into an external system allows your mind to experience things in a way that is more present
Externalizing memory enables you to gain knowledge of your own memory. You can watch yourself learn and forget things.
Jeremy uses Google Docs to externalize his memory. This for several reasons: 1) he loves spreadsheets and docs, 2) links between things are easy, 3) it’s easy to share. However, he wants to move off of it for privacy reasons.
Jeremy’s system is private, but shareable.
His exo-brain has many pieces, but we focused on two: documents on systematizing creativity, and documents describing models of systems.
Jeremy is interested in systematizing creativity. To practice this, he writes a list of 10 items in 10 minutes in response to a prompt every day. Some examples of the prompts included:
If he ever runs out of prompts, his task for the day is to generate 10 new prompts to use in the future. All of the prompts are stored in a meta list of idea lists, which links to each idea list.
Why is this important? The ability to generate ideas defines the spaces of ideas that people have access to.
According to Jeremy, this practice has enabled him to generate plans and concrete options in the face of a problem.
Learn more: Systematizing Creativity - Models and Techniques
Part of intelligence involves acquiring many models. Jeremy collects models of models. Some examples:
The practice helps him see ideas that are similar across different domains.
In the past, Jeremy had a deep interest in the Quantified Self. He continues to do time-tracking out of habit using a Google Calendar integration he built himself and RescueTime.
A dream of the Quantified Self idea is that if you had enough data, you could predict when you would be productive. However, the quality of data today is not good enough.
Andy is a software engineer, designer and researcher. He has previously led R&D at at Khan Academy and worked at Apple.
Andy introduced himself with a series of questions:
He calibrated himself by asking us how many of us were familiar with the following questions:
He had just published an essay, or perhaps more accurately a mini-book, called "How can we develop transformative tools for thoughts? with Michael Nielson.
Andy argued there was a deficit in thinking about the space of tools for thought, which has results in many products by the tech industry which have not made significant innovations.
Andy made a limit claim that standard designs methods were insufficient for making significant advances. To help explain, Andy described how Roman numerals had many issues such as a difficulty with multiplying and an unscalable system for representing large numbers, and then asked us, “What if you were IDEO in the Roman Empire?” (For those unfamiliar, IDEO are basically pioneers of the design methods which are most commonly practiced today.) If IDEO had been around and tasked with helping the royal accountant, they likely would have done many things:
But despite all this, it’s unlikely that IDEO would have invented Arabic numerals because to do so requires mathematical insight that requires a deep knowledge of distributivity and associativity that only mathematicians would have had. In general, these are limits to what IDEO is capable of improving because some domains require expert insight. Tools for thoughts seem to be one of these domains, and therefore before building more, our first project should be to think hard about how our current tools are insufficient.
I don’t recall the context, but we discussed how there existed decks of cards for generating ideas and how it may have helped the Romans come up with a system that could at least handle large numbers, but which might not have been easy to multiply in. Some examples of these decks of cards include:
Matuschak built a thing called “Quantum Country”, which has been live since March, and is evolving weekly.
Matuschak was interested in an idea he called “programmable attention” which he explained but which I didn’t fully understand. One example of this was maintaining a “question buffer”, where you repeatedly answer the same set of questions, and then compare your answers over time.
Some recommendations on learning more about Luhmann’s Zettelkasten:
Joel is a serial entrepreneur.
Joel has been working on a memex for 20 years. He is mostly interested in increasing his returns on cognitive effort.
A tool that could aid with recall has the capacity to be very powerful. Niklas Luhmann, who invented the Zettelkasten system, claimed it was a “collaborator in his work”.
Human memory has several issues:
Working memory has only 5-10 slots (which is made worse that it gets affected by day-to-day stuff as what’s for lunch). Even if you worked on millions of problems, they may not
Our brains can commit things to long-term memory, but has evolved to focus on things that are socially useful
Intelligence augmentation is about increasing returns on cognitive work.
Joel created for himself a variation of a Zettelkasten where cards can be arranged into articles, where an article is just a sequence of cards.
Each card is written as a re-usable thought chunk with a unique number in the corner to identify it. Joel emphasized cards should be written in a format where a third-party could see and know what you’re talking about without the context you have, so that it will make sense to yourself years later. In other words, cards should probably be paragraphs instead of words or phrases.
The advantage of this system is that if you improve a card, you improve every article it appears in. The disadvantage of the system is that you need to check every article it appears in to see if it still makes sense. This issue is called “drift”, and was also an issue with Project Xanadu, which also enabled transclusion. Joel argued that drift was a feature of the system, because it forced you to write cards in a way that each could stand on their own. However, in a sufficiently large system it may take too much time.
Joel observed that some cards were “super connectors”. The times that each card was transcluded followed a log distribution.
Joel explained to us how different memex system fail as they grow:
Joel began using “Pads” to organize notes on transient information. This was based on a whitepaper called, “Dynamics on expanding spaces: modeling the emergence of novelties”. High-value information is transferred over to cards.
Joel think it might make more sense to think of a memex not as a single tool but as a set of tools (“full stack intelligence augmentation”). He himself uses a combination of Anki, cards, and pads.
His system is not public.
Conor is a serial entrepreneur, and well-read on memexs and adjacent ideas.
Conor is working on a company for his tool which is called Roam Research. His system is similar to WorkFlowy, but it has some interesting features:
The core idea of Roam is that “You shouldn’t have to know the structure of your thought as you’re typing”.
Mark is a software engineer. He works at the Internet Archive and studies semiotics at UC Berkeley with Terry Deacon. He’s interested in the origin of meaning as a scientific discipline.
Mark has been working on his memex, called “mx”, since 1984. His memex is the simplest of all of them. It’s a DOS program from the 80s that allows him to create associations between two strings. He simply selects a string in his database, and then he add type in additional strings and the program will create associations and render them as a list.
It has 2.2M unique text strings with 7M associations between them. He can do counts on the number of times each string was accessed.
Mark takes an approach from semiotics: the meaning of strings comes from their relation or non-relation to other strings. I think he sees his project partly as a work of art.
When Mark associates string, he doesn’t necessarily understand what each string means. For example, he doesn’t understand what “Kant’s transcendental critique” means. But if he links it to enough words/phrases to it over time, it will become more clear to him. As he reads books or papers, he continuously adds phrases that are interesting to him.
I presented by my encyclopedia, memex.cc, which I’ve been working on for the last six years. I explained that the software was less interesting to me than knowledge of how to write decent entries, which involved coming up with a list of common section headers. Each section header implicitly is an answer to a question. If you can find patterns, it should become easier to know the questions you need to ask when you encounter something new.
Jacob is an engineer, researcher, and now entrepreneur. His advisor at MIT was Tim Berners-Lee.
Jacob introduced himself by sharing that he accidentally created his own Zettelkasten, and that he was Frustrated that human activity is less coherent than it could be because our collaboration tools suck.
Jacob is working on a project called IdeaFlow. He gave us a demo specifically of IdeaPad Graph, and we tried to brainstorm in real-time a way to measure memory. As we brainstormed, Jacob connected our ideas to ideas he had already written down that were being autocompleted by the system.
The autocomplete uses semantic search. It’s based on something called “ConceptNet” but is more fuzzy. Jacob didn’t fully understand because he hired an NLP Phd to help him with it.
IdeaFlow is similar to Workflowy, but it has a few cool ideas:
Jacob also shared some interesting etymologies with us:
Some questions/themes that came up that affected all of us:
Is there a general interchange format for these systems?
The answer is currently no. But as long as we are all using structured plaintext that preserves the semantic structure, it might be unimportant. We can always parse plain text.
A common theme during the demos was that we should probably be using multiple tools, not just one, and tools sit at different layers.
Joel has two layers for his system. Mark acknowledged his system solves only only one layer. Andy shared that Luhmann distinguished between epheremal notes and durable notes.
A memex probably needs semantic search rather than text search. (Jeremy and Jacob both implemented semantic search. Joel said plain text search fails after 1 year of active use.)