hierarchy
Excursus: Homage to the Square^3
The problem with trees
Many systems are organized hierarchically. The CERNDOC documentation system is an example, as is the Unix file system, and the VMS/HELP system. A tree has the practical advantage of giving every node a unique name. However, it does not allow the system to model the real world. For example, in a hierarchical HELP system such as VMS/HELP, one often gets to a lead on a tree such as:
HELP COMPILER SOURCE_FORMAT PRAGMAS DEFAULTS
only to find a reference to another leaf: Please see
HELP COMPILER COMMAND OPTIONS DEFAULTS PRAGMAS
and it is necessary to leave the system and re-enter it. What was needed was a link from one node to another, because in this case the information was not naturally organized into a tree.
The brilliance of notion
This, I think, is the brilliance of Notion, and what makes it one of the best examples of “fidelity to digital information” that I’ve come across. The structure of the app reflects the structure of the web itself: digital content is purposefully formatted, like semantic HTML elements, and exists in a hierarchical structure (directories on the web, nested pages in Notion), yet can be linked and referenced to create a complex network of information. And pages in Notion reveal the structure of the information: when nesting a page within a page, the child page always displays on the parent page. There’s no way to create a child page that doesn’t display on a parent page, no way to obscure the structure of the information. The semantic structure of Notion reflects the semantic structure of the web itself.
Separation and connection in all things
Truchet's approach was more topological than geometric, and the qualitative aspects of pattern take priority over the metric ones. His principles provide a kind of metaphor for the hierarchy of separation and connection in all things.
Agile as Trauma
The Agile Manifesto is an immune response on the part of programmers to bad management.
Many a corner office
I want you to consider instead the possibility that Waterfall came to exist, and continues to exist, for the convenience of managers: people whose methods are inherited from military and civil engineering, and who, more than anything else, need you to promise them something specific, and then deliver exactly what you promised them, when you promised you’d deliver it. There exists many a corner office whose occupant, if forced to choose, will take an absence of surprises over a substantive outcome.
Intramural brownie points
Features don’t work, in the sense that they can be easily gamed. A brittle and perfunctory implementation, done quickly, is going to score more intramural brownie points over a robust and complete one. If the question is "does product
A
have featureX
?" then the answer is yes either way.Feature factories
We use the term feature factory as a pejorative to designate companies addicted to adding features, while accumulating incalculable so-called technical debt. This situation is driven by management for the convenience of marketing, and I am skeptical that a more faithful application of Agile principles will correct it. Indeed, I suspect Agile processes are constitutionally vulnerable to this kind of compromise.
The presence of a feature can only indicate to a user if a goal is possible, behavior will determine how painful it will be to achieve it.