Abstraction, materiality and language.
In this series of post I’m trying to explain why so many coders are musicians, a possible relationship I found when transitioning from being a musician to developer that I think. In the previous post I briefly explained my personal experience and a first common trait shared by musicians and coders: long-term commitment.
In this post I’ll go into features of music and code itself, more than traits of coders and musicians, to try to explain this relationship.
Material — Abstract duality
Long-term commitment is a personal trait, but it doesn’t relate directly to actual code or music. Is there something in the two activities themselves that puts them together? I think this is turning abstract relationships into material creations.
Music is both material in the physicality of sound and abstract in the relationships between the sounds themselves. The sounds relate to each other through abstract concepts that affect our subjectivity. Amongst these musical abstractions are rhythm, harmony, counterpoint, orchestration and other forms of timbre relationship theory. Similarly, the music creation process is transforming abstract techniques into a musical object (organized sound?) that has relationships we can understand both intellectually and with our bodies.
Code has the same duality in that a developer works with abstractions to create an end product (program or game) that can perform a function and be understood by users. The abstractions of programming are in the form of objects, methods, functions, inheritance and all sorts of relationship models and structures that don’t relate much to the ordinary realm of human existence. The material aspect of it is the existence of the code itself and the program that emerges from it.
Of course, the purpose of most programs is different than music’s. Programs are usually tools that help us create, access information, organize data, or games to entertain us. The end goal of music, if any at all, is non-utilitarian and less straight forward. Its goal could be in part to entertain us, change our subjectivity, arouse out passions, or stimulate out intellect. Whatever it is, its purpose is certainly not of the same kind as a program’s.
Though the end result and purpose is different in both disciplines, they share the process of turning abstract relationships into material creations. In this sense, coding and music share a common creative process that provides a similar intellectual reward to the creator.
Music and code as language?
I’ve heard many people say code and music relate because they are both languages. I think there are certain characteristics of programming and music that may seem similar and map into language, but that these characteristics are too different in nature to be able to explain why many coders are musicians.
One of the main pillars of this idea is the fact that both music and code are written expressions that transform into a creation. In the case of music, this is not true as many musical traditions have been oral for ages and notation is relatively recent in music history. Because of this, music doesn’t require notation to exist.
On the contrary, there is no programming without notation. In programming languages the creation of syntax is prior to the act of programming. More importantly, in coding, all the complexity of the program is defined in the lines of code, which is not the case of musical notes. Scores are a reduction of a much more complex phenomena, more like the map of a terrain than the terrain itself. On the other hand musical syntax is usually a historical process and collective effort, as abstract, predefined, and arbitrary syntax is music only has appeared in very specific musical movements (New Music and Ars Nova perhaps).
The second reason I’m usually careful about treating music as language is because the nature of what it communicates is open to debate. Code establishes a one-way communication between programmer and machine, so that the first can give the second logical instructions. What does music communicate? This question is tricky. I wrote about this subject in the book The Art of Experience and it’s not straightforward. Nevertheless, I do think music ‘communicates’, and in that sense it could be considered a language.
In spite of this, many human endeavours communicate and don’t have this tight relationship between them like music and coding. Are many journalists, linguists, or politicians musicians too? I don’t believe so. With this, music and code could be considered languages because they both share some obvious features of it like notation and communication, and this could be part of the relationship we’re looking into. But I think the nature of this communication and notation is different, so it can’t be a reason that explains the relationship.
Thanks for reading. In the third and last post of this series I explore the instrumental and social aspects of music and coding. Check it out here.