Interestingly, beauty is never a factor, so it’s going to be tricky to connect it back to aesthetics—basically the idea is that it can be a hint (e.g. if you have a gobal variable in a message-passing architecture, that should be a trigger that something ugly is going to come)
TURNS OUT MAYBE WE DON’T SEE PATTERNS, BUT WE COULD APPLY THOSE PATTERNS TO LANGUAGES THEMSELVES
gabriel: patterns of software / search for beauty
Simplicity is not the geometrically banal. Then Gabriel’s addition is the focus on evocative power, on the possibility of signifying something else.
Patterns as Software Design Cannon, Paul Taylor: “The time and effort invested in mastering software design alternatives is generally appreciated, but by contrast, architects of the physical worldassume that they can understand and digest canonical works from two-dimensional magazine images and brief commentaries from eloquent observers.”
If we are talking about design, then the ability to tweak, expand or redefine the original behaviour with minimal changes would be something that I find appealing. Some, however, would claim that this quality attribute has a name: maintainability.
Still, from a pure abstract perspective of software architecture, I would say that the ability to easily invoke in your mind an isomorphism between the concrete architecture and the intended domain/purpose, is a quality without name.
a class within a class link is a visual/spatio-mental pattern which means “complexity”, “unmaintainability”, “unsustainability”
bad patterns make possible the kind of actions which result in bad patterns?
patterns in arch: how is surface structure transformed into deep structure?
beauty in inscrutability?
when we talk about esolangs, we are designing a perspective for someone to think through. -daniel temkin src
is hacking considered beautiful because it’s:
and the intent is clear
math: link - elegance is in the presentation, in the actual notation/form
PL are treated as “ as texts subject to mathematical manipulation” (wirth, essence of PL, p.3)
and wirth is actually saying that we don’t really need to understand implementation (how the computer does it)
[Programmers] saw them as coding schemes by which to feed instructions more efficiently into computers, rather than as notations for designing new, abstract artefacts.
a theory of software dynamics (software as a pattern of syntactical form (see Suber, 1988)
software is a model, a medium of thought, an environment (Mahoney, 2011)
Another example is thread concurrency. The book on parallel programming mentions an example of parallel thread processing which looks beautiful but is ugly on the inside: https://mirrors.edge.kernel.org/pub/linux/kernel/people/paulmck/perfbook/perfbook-e2.pdf p. 105
beardsley: aesthetic point of view
Gratification is aesthetic when it is primarily obtained primarily from attention to the formal unity and/or the intensity of regional quality.
also the concept of “rules of relevance”: when is an aesthetic experience relevant?
his implication is that there are other point of views than the aesthetic one (what is the one in hacking?)
the most important and relevant of his criteria for the aesthetic experience is “active discovery” -> imaginative realization (budd)
goodman as a prelude to aesthetic cognition:
In the aesthetic experience, the emotion functions cognitively (goodman)
carroll makes a point for a content-first approach to aesthetics: Aesthetic judgments in code aren’t disinterested: they’re vested in being able to understand.
reconnect to pineiro? at least touch upon. (but it would make more sense in the first part, examining beauty in softdev)
the MIT study on reading code:
The emphasis placed on the symbolic, cognitive, planning aspects of the arts leads us to give value to the role played by problem-solving, seeing there a model in terms of which the moment-to-moment artist’s behavior at work can be described. “An analysis of behavior as a sequence of problem- solving and planning activities seems to be most promising […]” (goodman)
within a given context, elements are being perceived, processed through existing knowledge schemas in order to extract meaning. (detienne)
question: if mental models are task-oriented, what’s the relationship with aesthetics (passive contemplation)?