Knowledge structures
Many structured ways of knowing seem to roughly fall into one of several spatial structures: lists, trees, grids, and networks.
Lists
Lists, or sequences. These 1D data structures are found everywhere in our tools and in nature.
You can build many other things out of lists. Lisp is a programming language that takes this to a logical extreme. Everything is seen as a list, or a list of lists, and Lisp constructs every other data structure from this single primitive.
Time is what keeps everything from happening at once. (Ray Cummings)
Time is one reason we often end up in sequences. Living within time forces us to put things into some kind of order.
Language, stories, film, music, work this way. A speaker flattens a cloud of connected ideas into a linearized subset. A listener unpacks them. The conversation loop.
Lists can also be ordered by priority or importance, as with checklists. We can traverse lists in order, as when a piece of software reads from computer memory, or as when a binding protein zips along a DNA strand.
Trees
Trees allow for order, and also branching.
The branching structure allows us to use trees to model branching logic, as in computer programs. Code gets parsed into an abstract syntax tree, which the interpreter walks along some path according to the data you pass in. We might also see trees as a list-of-lists, as Lisp does.
Science is full of trees. Perhaps one reason is because libraries are tree-shaped. A book can only be shelved in one place, unless you happen to have many copies. In a book-centric culture, it may often be easier to construct knowledge around tree structures.
Interestingly, the tree of life is not quite a tree. Horizontal gene transfer happens, and from the point of view of population biology, the branching point between species can be fuzzy. It’s just individuals falling along a statistical curve. But a taxonomic tree is a good-enough simplification in many cases.
Where lists imply order, trees imply hierarchy.
Grids
If you can chop it up and flatten it down to two dimensions, the regular structure of a grid affords a synoptic view. Side-by-side comparison, and lookup by coordinate also become possible. Grids are tremendously powerful.
Perhaps for this reason, states, all the way back to the earliest, seem to want to produce grids. When you regularize something to a grid, it affords a high degree of legibility.
One of the fundamental tasks of the State is to striate the space over which it reigns.
(Deleuze and Guattari, 2004. A Thousand Plateaus)
The logic of the grid appears to be isomorphic with the serial logic of mass production.
(Mark C. Taylor, 2001. The Moment of Complexity)
It’s difficult to picture grids without thinking of spreadsheets. How much of our economy is powered by spreadsheets? Quite a lot, probably. Spreadsheets have such expressive range, they find use within organizations as different as hedge funds and volunteer mutual aid networks. A tool that harnesses the expressive power of the grid.
Networks
Software is dynamic, and this allows us to construct dynamic networks that can self-organize, evolve and adapt. We can easily connect anything to anything, and we do, with hypertext.
In an important sense there are no subjects at all; there is only all knowledge, since the cross-connections among the myriad topics of this world simply cannot be divided up neatly. Hypertext at last offers the possibility of representing and exploring it all without carving it up destructively.
(Ted Nelson, 1974. Computer Lib/Dream Machines)
Networks offer an organic structure for knowledge, that, until the advent of software, might have been difficult to enact or visualize, especially dynamically. We’re still playing out what happens when we sensemake with hypertext at scale.
Tools for thought-structures
Lists, trees, grids, networks. This list is far from complete. There are many other important and meaningful ways of knowing. But it is provocative to consider how expressive these few structures can be.
It’s also worth considering how broad this design space is. The “tools for thought” space today has a lot of “Roam-likes”—outliners (trees) with hypertext connections (network). Spreadsheets (grids) continue to be important as well. What other structures and hybrids might be possible?
Posit: Lists, trees, grids, networks. If you build a tool that operates over one of these structures, it is likely to have broad application.