- what is the distinction between creative and aesthetic writing of source code?
- decide between writing and reading? usage and possibilities?
- what definition of code do i want to choose?
aesthetics in software engineering is not about the program, it’s about the programmer.
the aesthetics of clarity in executable source code
“experientialism” / experiential realism
questions of clarity vs. simplicity (how often do they correspond? oppose?) - is one within time, or within space, or within people?
semantics? -> programming languages have semantics (either denotational or operational, stratchey) -> operational is whatever the machine says, and we can realize/describe/use a symbol without understanding it -> understanding the symbol vs. understanding what the symbol refers to.
there is always a bit of giving up the understanding (linux kernel, APIs, etc.). does it remove the essence or in contrary highlight it?
STRATEGY VS. TACTICS
but tactics could actually be the tip of the manifestation of a yet unknown (the personal?) strategy.
aesthetics as a relationship to the human: if tactics is what makes the individual, strategy is what forces the group > as code matures, there is a switch to a different kind of individuality (mass-production of code)
- what are the literary standards to which code can be held to? what are OTHER standards?
what is source code, as a ~~literary~~ linguistic object? (theoretical linguistics, craft linguistics, literary linguistics)
- what are the unique ways that code can demonstrate/express an aesthetic sentiment?
- what are its structures, vocabularies and syntaxes (Cayley)?
- what are the (interpretative, critical) techniques to identify these aforementioned?
- how do those establish a tension? (tension being a prerequisite for an aesthetic experience -or a (re)solving of said tension) > the tension is already established from the get go as a programming is inherently hard to comprehend (why?)
- what are the useful conceptual tools that i use from the research on e-lit (e.g. combinations, potential, interactivity, … check the book by hannes bajohr, code und Konzept)?
- if compilation make the source code poem lose its specificity, how does that help us define what that specificity is?
- are existing theories applicable? to what extent do we need to modify them? to what extent do we need new ones?
- theories for what? theories to explain how source code can be a means of creating aesthetic objects. <- this is important
- what are the notions of literature? text, fiction, account, figure, materiality, author, literarity, context, commitment (?), fragment (this one works with source code modules, in space rather than time)
- how can source code lit be categorized according to different periods?
- linguistically (i.e. different programming languages)
- socio-economically (enterprise, hack, poet)?
object (object of code’s discourse)
- what is code trying to make visible (following deleuze on bacon)? rather it doesn’t make visible, but rather “intelligible”? how (semiotically and aesthetically > how do those two differ)? -> making the thought process visible/graspable/embodied/emmaterialized
- how does the creative/aesthetic use of code start to involve the rest of the world rather than simply the self-reference?
“efficient code” depends on knowing the material that you are working with: in the 1970s, it was the compiler (kernighan, elements of programming style). in the 2000s, it might be just the language spec.
code as substitute-material
- double-meaning (paloque) is the fact that one can play between machine-language and human-language
- possible triple-meaning with an interplay in conceptual structures (OOP)
- creativity might then be that we’re applying software metaphors to classes of concordance
- referring to software itself done > hardware, language, algorithm
- referring to the environment in which software exists > problem domain, collaborators
- need to identify the place of uselessness in productivity yes! important
- is it relevant that the domain of application of software can always expand? (from a computational perspective, and from a practical perspective)
- there is also the idea that, even when the code might not work properly, or might barely work (in a functional perspective), it might still work in a literary perspective, the same way that flaubert works, or that beckett works, i.e. does what is intended of it to do (how do we know that? we need critical tools to assess the “aestheticity”). we also need to assess what it is that it is intended to do.
expressing vs. explaining (Kurosawa) / hinting at (Tolstoi)
‘There is no such thing as elegance or subtlety in the way I use software.’ Belgrade-based sound artist Svetlana Maraš > there are other aesthetics: brutality, organicness, rococo, etc. elegance and subtlelty are only subsets, but very very large ones
programming languages as actors in actor network theory?
- programming languages define sets of aesthetic relationships, and as such are resources for intellectual/thoughtful work/formulation
- this is kinda what los pequenos glazier was saying when he was asking “how does materiality influence the text itself?”
- on a less formal level, the sociohistorical approach to literature implies that literature judges a society, and a society can explain its literature.
- e lit can therefore help us formulate our being in this society (bouchardon)
- this could be extended to programming languages-as-literature.
- there is the reader, and there is the act of reading. does it need to be out loud? how are things pronounced?
- who is the subject, in a code-text?
- what are the tensions between lit and code?
- lit can create any word (joyce), code cannot (really? cf. growing a language) –but that is changing with OOP?
the opposite of an aesthetic of the frustration (in which the reader can not know everything) is an aesthetic of the XXX (sublime? demiurgic?), in which the reader is presented with everything, computationally, but still always reduced to the words used and read
- *In linguistics, prosody is concerned with those elements of speech that are not individual phonetic segments (vowels and consonants) but are properties of syllables and larger units of speech, including linguistic functions such as intonation, tone, stress, and rhythm. Such elements are known as suprasegmentals.
Prosody may reflect various features of the speaker or the utterance: the emotional state of the speaker; the form of the utterance (statement, question, or command); the presence of irony or sarcasm; emphasis, contrast, and focus. It may otherwise reflect other elements of language that may not be encoded by grammar or by choice of vocabulary.* (wiki)
- marino: “Much of this preliminary work on code has tried to determine what constitutes this unique semiotic system, work that prepares the discussion of code analysis, but CCS needs techniques for developing particular coding structures.”
can source code support multiple readings? should it?$$
however, ideally source code has no depth: it is what it does > but hidden depths have to do with the nature/function of the work and the social field in which it exists
“What it means for something to have “depth” is that its explanation requires bringing in something like that, something of a different nature, something that does a kind of work no additional detail ever could.”
perceivable (but still hidden) vs. shown
looking harder vs. looking differently
Some colleagues (such as Thomas Kühne from Victoria University of Wellington) have taken this further to explicitly define the limited properties of any model. Kühne (2005) describesthis in three ways:mapping–(i.e. acknowledging that models are projections of an orig-inal);reduction–(i.e. acknowledging that models only represent a selection of relevantproperties of the original); andpragmatics–(i.e. acknowledging that any model isaccepted as a proxy for the original only for a specific purpose).
style as managing ambivalent attachments to big social forms > mcgurl, d.a. miller
problematiques importantes: dispositifs et mediations
DRY is actually a problem: humans understand if you repeat them over and over. how do you compromise that?
IS THERE A RIGHT WAY TO WRITE BEAUTIFUL CODE?
concepts / frames
- the dynamic (living in space/time, calculated in real-time, reacting to external input)
- a rhetoric of structs
- non-linearity of reading/execution (back and forth between source and compiled result)
acknowledgment of socio-cultural context within which code poetry emerges, then formal examination of language through which these are written, and circling back towards what these formal uses have to contribute about the purpose/meaning of writing source code poetry (communities, hackers, exploitative economic systems, etc.), and allow for a new perspective on contemporary literature.
- recap of existing work on why code is an object of study
- extending that range of study (what has been explored so far are themes, distribution, communities (at least CPB, Bouchardon)):
- (1) stylistically, at the micro-level (style), (developing theoretical tools, frames of analysis, close readings, new reading postures -e.g. readers as compilers and interpreters)
- (2) empirically, at the macro-level (genre), (other domains, such as style guides, comments, new corpuses that have been released since the previous studies (source code poetry, etc.))
- (3) linguistically (analysis and design of programming languages) (parts 1 and 2 will have to solidly argue as to why one should care about languages/materiality -classes and structs are the new materiality??)
art is a breach in the system
Is there something that makes something inherently beautiful? As relations to humans/human condition of that time -studying tools.
speed run vs. 100% of the game vs. elegant gaming
which aesthetic standards are set by the machine vs. which aesthetic standards are set by human social context?
does each type of software have different aesthetic standards?
what is the aesthetic of a semantic system that is supposed to be understood by both humans and machines?
beautiful proofs in geometry?
how beautiful code defines its own beauty?
- the comment asks the question of the voice of the programmer
- the style guide
- aesthetic of cooperation? what does that even mean?
- the style guide transforms a readerly text into a writerly text (barthes, le plaisir du texte)
tzvetan todorov: “les effets de style ne pourraient exister que s’ils ne s’opposaient a une norme, a un usage etabli”
the programming languages
- esolangs have a “wimpmode”
turing paper 1936: the first instance of source code makes the explicit distinctions about layout of binary (“this is less easy to follow…”). can be a good starting example of the importance of form.
what is the difference between poetics and aesthetics? poetics put together an effect (formal, subjective) vs. aesthetics are more universal, inherent, contemplative? solved
the role of case studies: develop an outline from looking at code, then confront that outline (which will probably be multifaceted) with case studies (2-3) solved
how is the aesthetic value of source code different from the aesthetic value of digital art? irrelevant