This thesis is an inquiry into the formal manifestations of source code, into how particular configurations of lines of code allow for aesthetic judgments and on the functions that such configurations fulfill with regards to understanding. This inquiry will lead us to consider the different ways in which source code can be represented, depending on its aims and on the contexts in which it operates. This study on source code involves the different groups of people which read and write it, the purposes for which they write it, the programming languages they use to write it, and the natural language they use to speak about it. Most importantly, this thesis focuses on source code as a material and linguistic manifestation of a larger digital ecosystem of software and hardware to which it belongs. Since source code is only one component of software, this thesis focuses on studying the reality of written code, along with its conceptual interpretations.
The examination of source code, and of the discourses around source code will integrate both the variety of ways in which source code can exist, and the invariant aspects which underline all diverse approaches of source code. Particularly, we will see how each groups of practitioners tend to deploy references to conceptual metaphors drawing from the domains above, but also how these references overlap across groups. The point of overlap, as we will demontrate, is that of using a formal linguistic system to communicate the understanding of complex cognitive structures, at the interface of the computational and of the natural . Through an interdisciplinary approach, we will attempt to connect this formal symbol system to the broader role of aesthetics as a cognitive mechanism to deal with complexity.
The rest of this introduction will consist in establishing a more complete view of the context in which this research takes place, from computer science to digital humanities and science and technology studies. With this context at hand, we will proceed to highlight the specific problems which will be tackled regarding the current place of aesthetics in source code. After outlining our methodology and the theoretical frameworks which will be mobilized throughout this study, we will sketch out how the different chapters of this thesis will address our research questions.