System → Programs → Apps
No.
Silicon Valley “design languages” are languages exclusively for the designer to speak to the user. The user is not given an equivalently expressive language to speak back with: the Silicon valley designer believes that the user has nothing valuable to say beyond affirmations and grunts. A "design language" is a language of sermons: preachers do not tolerate interruption of their mass with questions and commentary.
The language I want to build is a language for conversation amongst equals.
Focus on the forces. For example: force: forgetting/losing context vs. the need to know where you are.
I have no opinion as to whether these are implemented in the core of a system or as plugins. The distinction is meaningless if you follow the Extremely Late Binding pattern.
Terminology: windows vs. elements. Windows is sadly already loaded w/ bad meanings. But also, "element manager" feels obscure.
I absolutely need inline pages to do this right. I need to see the whole structure in front of my eyes. Even better would be to lay them out by category.
I want to avoid explicitly saying the system should be modifiable. take: Modifiability is not a valid pattern? Maybe it should emerge from other more basic patterns.
Maybe maintain a changelog w/ commits for every pattern?
https://www.inkandswitch.com/slow-software.html
See also Lightweight Processes
https://www.notion.so/Computing-Spaces-Log-bb7cf95d8f9b48a2a8994d8f33676cc9#eb841c0a01fd4ae2b9ac924bec4a0e12
For people to realize their goals, they often need to narrow their focus on a single element.
Full-screen controls let people expand a single element of an interface to occupy their whole screen, letting them ignore the visual clutter of unnecessary UI. But a designer cannot hope to anticipate every possible thing the user would like to view in a full-screen.