Conceptual Structures
Emily Short deliberately created, and used, a 5-term structure in “The Annals of the Parrigues”. This is one of the most beautiful conceptual structures that I know of, and this entire post is merely a recap and/or response to her work. For example, one of the terms is SALT, and this is its definitional description:
Dryness and preservation, crystals, restraint, law and legality, age, perfectibility, ice, the fortress of solitude, craft, precision, pedantry. Salt is elegant, mathematical, and exact. Salt preserves and entombs. Salt codifies. The principle of salt takes an interest in grammars for the sake of grammar. It sees light through crystal. For the principle of salt, the machine-that-writes matters more than the thing-written. Salt requires that code be commented, clean, and open source. Salt insinuates that the code is perfectible as an object apart from the creator, and that generative code should be able to perform generations without the contribution of human discernment.
What is this kind of thing that Emily Short has created? We might call it a conceptual structure. What are some other examples of conceptual structures? The four terms FIRE, EARTH, WATER, AIR are used in various fantasies, such as “Avatar: The Last Airbender”. The suits of a Tarot deck could be considered a 4-term structure. Alternatively, the entire Tarot deck could be considered a 78-term structure. Christopher Alexander’s “A Pattern Language” is a 253-term structure. This is a very beautiful example, though it’s also enormous.
What, precisely, is a conceptual structure?
A conceptual structure is a small set of idiosyncratic terms, each with a definitional description. These are words or short phrases such as KNOWN UNKNOWNS or VALUE PROPOSITION, which may allude loosely to their intended meanings, but are really defined, for the purpose of the conceptual structure, by the associated definitional description, which is a sentence or paragraph clarifying what the intended meaning of the term is, in the context of the conceptual structure.
Finally, there are pairwise associations of the terms, usually conveyed by a diagram, such that anyone familiar with the definitional descriptions of two terms Foo and Bar can easily imagine long, repetitious, (Llullian) paragraphs explaining how Foo relates to Bar. That is, the idiosyncratic terms need to “hang together” in a reasonable way. It is quite common for everything to be connected to everything.
Case Study 1: 2x2s are conceptual structures
Steven Covey’s time management 2x2 divides things on two axes, importance and urgency. The point of the 2x2 is to illustrate that often, our attention is sucked away from things that are important but not urgent by things that are urgent but not important.
Another 2x2, famously referenced by Rumsfeld in the context of the Iraq war, divides things based on two axes, knowledge and metaknowledge. The KNOWN UNKNOWNS quadrant is contrasted with UNKNOWN UNKNOWNS quadrant, where we are missing both metaknowledge and knowledge.
Venkatesh Rao is a 2x2 expert. He has blogged about how to draw and judge them, and also collected a lot of them.
Every 2x2 is a conceptual structure. The four quadrants have labels, sometimes simply composed out of the labels of the axes as in KNOWN KNOWNS, and each quadrant relates at least to its adjacent quadrants in a “hangs together” way - though often a 2x2 acts more like a complete graph on 4 vertices:
Case Study 2: Business model canvases are conceptual structures
Alexander Osterwalder, in 2008, proposed a definition of a business model:
A business model is nothing else than a representation of how an organization makes (or intends to make) money. Based on an extensive literature research and real-world experience we define a business model as consisting of 9 building blocks that constitute the business model canvas.
The definition also comes with a diagram, with each of the terms assigned a rectangular space.
Entrepreneurs and associated people have been using the business model canvas, filling out the various rectangles, with specifics of the business. It helps them organize their thinking. People have taken the Osterwalder business model canvas and created variants of it, such as Lean Canvas by Ash Maurya, or Strategy Sketch by Jeroen Kraaijenbrink.
The adjacencies of the rectangles in the diagram are not random, they are thoughtful. For example, the bottom left term, the COST STRUCTURE, is adjacent to the bottom right term, the REVENUE STREAMS, because they have to be balanced in order for the business to be profitable. REVENUE STREAMS is adjacent to CUSTOMER SEGMENTS and CHANNELS, and so on.
Business model canvases illustrate that rigid geometry is not the only way to build conceptual structures; the graph of which terms adjacent to which other terms can be loose and organic, so long as it is relatively dense.
Case Study 3: Software architectures are conceptual structures.
Gary Bernhardt’s “Functional Core, Imperative Shell” is a 4-term structure.
- VALUES AT THE BOUNDARIES: Values are things like ints, bools, enums, opaque unstructured strings, and dictionaries and arrays built out of those. Values are good interfaces, simple and opaque.
- FUNCTIONAL CORE: pure functions, decoupled from each other, and with few or no external dependencies, having relatively many control flow paths through them, taking and returning value objects, tested by unit tests.
- IMPERATIVE SHELL: imperative code that wires together the FUNCTIONAL CORE with each other and with any external dependencies such as net or disk. Has relatively few control flow paths through it, is tested by integration tests.
- ACTOR-MODEL CONCURRENCY: If necessary, multiple FUNCTIONAL CORE/IMPERATIVE SHELL entities operate in parallel; each has a queue of messages that it reads from, and they communicate and coordinate with one another only by sending messages into their queues.
Why are conceptual structures useful?
Conceptual structures act as analogy-making machines. By shoehorning your current situation into a conceptual structure, and also some other situation you are familiar with into the same conceptual structure, then you have constructed, automatically, an analogy between your current situation and that other situation. Why would you want an analogy? Analogies let you transport data (with some rigidity, and consequently some hope that it remains applicable) from the familiar to the unfamiliar. For example, suppose that you are unsure of which action or decision would be best in the present. If you could transport data from your past, where you know how things turned out, then you might be able to decide better. If you are an amateur, possibly transporting data from experts, might help.
Also, to some of us, conceptual structures are interesting in and of themselves.