Baking a cake
Diagram of zooming into the universe of a cake:
🎂→ 🍰→ 👩🍳+🥛+🧂+🧈+🍒(🔍🍒→ 🌳(🔍🌳→ 🌍))
I think the metaphor of baking a cake could explain my vision here:
When we’re presented with a typical website or PDF it resembles what I’d call a “baked cake ”. Form, structure, content, style is presented to us as a baked whole (due to the nature of HTML). We can’t see its parts/ subparts/ … or relations to the system the cake is part of (JSON/ graphs).
Now if I want to understand how that cake was created, I have invest a lot of cognitive & willpower to break the cake from its baked state into its ingredient state. I’ll probably need to look at many other cakes to fully understand all ingredients of my cake. What’s almost impossible to extract from the baked cake in front of me is the process and all the agents that were involved in making it.
In comparison, if a document was structured as a composition of raw blocks, i.e. a block made of other blocks, with “baked views”* that can be broken down into the “ingredient blocks”, we will not only understand the document aka cake better, we will be able to build upon it and remix its ingredients with ease.
*(the sum is, of course, greater than its parts, e.g. spatial or temporal properties when composing blocks)
When we remix blocks, there’s a great value if the link to the origin is preserved (RE: Transclusion/ n-directional links). It’s almost like we should ban “copy & paste” and only offer “quote & redefine” (or from “pointer down, select start & end, pointer up” to “drag & drop” only).
The action redefine can have several levels of change, from just adjusting the grammar to using synonymous vocabulary / an alias, to summarising or expanding a concept, to completely redefining the meaning of a word or a series of words. However all these changes should be treated as interlinked versions, not as overwrites.
Blocks & Meaning
The point you made about the nature of tweeting is a very interesting one. It sparked some ideas for me, about how artificial restrictions can drastically shape the many nature(s) of communication.
I’m thinking here about a restriction to the scope of the content of a block, similar to the character limit on twitter, but instead of characters, it would limit the number of concepts to a composition that can be understood in isolation.
There’re probably various levels of understanding depending on who reads it.
For example we probably all have a clear idea what’s meant when we read the word “Transclusion”. But to someone who hasn‘t developed a mental map of this concept a definition like on Wikipedia is recommended, with the option to zoom in and expand to even more in-depth definitions. So I expect this “limitation” to be a visual UI limitation that adapts based on who’s looking at it, e.g. considering their culture, language, domain or interest.
The purpose of such limitations to the scope of a block is to increase the ability to remix. For the individual, it’s more work to express something very concisely (like summarising my answer in <100 words will take ~10min), but I think for the collective consuming the information it’s worth it.