Critical Code Studies vs. Software Studies
Ξ December 7th, 2007 | → | by Mark Marino | ∇ test, CCS, codework |
[Updated: 12/8/07]
There’s an exciting conversation over at Writer Response Theory about Critical Code Studies. Jeremy Douglass, who recently took on the position of the Software Studies postdoc at UCSD, proposed a Venn diagram to illustrate the relationship between Critical Code Studies and Software Studies. Jeremy seems to be beginning his post doc by trying to firm up some definitions.
For Douglass, Software Studies and Critical Code Studies share some but not all interests.
On the other hand, Noah Wardrip-Fruin, a driving force behind the Software Studies program at UCSD, argues that Critical Code Studies is a central component of Software Studies. Software Studies, by this view, is the uber-field and Critical Code Studies is a set of analytical practices within it.
If we return to Douglass’ original formulation, we find the source of the disagreement (or why Jeremy’s postulation doesn’t fit within Noah’s): Douglass is trying to define the approaches according to the aspect of digital culture that they emphasize:
Software Studies emphasizes computation.
Critical Code Studies emphasizes uncompiled source code.
There might be uncompiled source code that does not get computed (for example, compiled) and there might be processes that occur in computation that were not driven by uncompiled source code. Would it be too simple to say that one analysis emphasizes the executable and the execution while the other emphasizes the language of those executables?
Noah asks what uncompiled source code is not software? Noah doesn’t object here, but rather asks for an example of source code that is not a part of software. From that, I derive the following implication.
Software Studies examines software and related material
Critical Code Studies examines code and related material.
According to this logic, the code is just one of the many aspects of software, so CCS, and more broadly Code Studies, would be a subset of Software Studies.
Subsequently, their debate ensues along the lines of objects of study (what counts as software or code) and approaches (what counts as software studies or critical code studies).
The test case involves codework, particularly codework that cannot be compiled. [Of course, Mez has already posted an example here on the CCS blog.] Jeremy suggests that these objects live outside the realm of “computation” as such but inside the realm of code.
Noah counters:
There are ways of looking at…codework poetry that are code studies, and other ways that aren’t, right?Looking at codework without any perspective informed by thinking about uncompiled source code has certainly been done, and I assume none of us think that’s code studies. Similarly, I’d say the ways of looking at it that are informed by thinking about uncompiled source code are also software studies.
I’m not entirely sure which readings of codework he’s referring to, so I can’t speak to them here. However, it’s clear that in this gesture, Noah is moving toward the second version of the Venn diagram (where CCS is encompassed by the broader field of Software Studies). If CCS is interested in objects that relate to “uncompiled source code,” so is software studies, since code is an aspect of software. It’s important to note that at this point, Noah has actually moved from talking about “critical code studies” to talking about “code studies.” This strikes me as a definitive move because it creates an analogy between “software studies” (as the study of software) to “code studies” (the study of code), a field that I have not seen fully defined.
However, Critical Code Studies is not “code studies,” the study of code. I can think of many examples where people study the way code functions without bringing in critical cultural lenses (meaning specifically derived from “critical theory”). That’s what computer science departments tend to focus on as far as I can tell. By analogy, then, Software Studies and Code Studies might include all of the work in computer science departments. Critical Code Studies however shares interests with those (it needs to understand the content taught in those course) but brings in specific critical lenses from outside. One might see a similar, though not entirely analogous, division between literary studies and critical theory, or perhaps Sociology and Cultural Studies.
Noah finally offers this definition:
Personally, my rough working definition of software studies includes any examination of culture that is informed by close examination of aspects of software, including uncompiled source code.
Again, Noah widens his circle to encompass CSS. However, this seems a very different stance than saying that software studies focuses on “software.” Here the object of study is culture and the means to that study are “aspects of software.” This is the most remarkable definition yet. But it certainly brings the projects of software studies much closer to the project of critical code studies.
If there is a distinction to be drawn perhaps it is in the focus.
Software Studies, as I see it, is a broad category covering a set of objects and their cultural contexts, akin to literary studies. This seems commensurate with Noah’s definition. And similar to literary studies, the field does not have to spend much time convincing anyone (whom I read) that software is meaningful to culture. It can focus on various ways in which software makes meaning.
Currently, Critical Code Studies, however, is still an argument, a hypothesis, and a movement that is trying to consider the meaning that can be found in/made out of code in relationship to culture. There is still quite a bit of doubt about whether or not it is possible and relatively few examples of elaborated readings of specific lines of code.
[Perhaps the answer lies in their dissertations: Noah’s Expressive Processing and Jeremy’s Command Lines: Aesthetics and Technique in Interactive Fiction and New Media]
Nonetheless, without being too reductive: Emphasis is important. In the world of limited time, critics must choose what they will emphasize in any given article. Do they make a choice between emphasizing the computation or emphasizing the code? Probably. Do they make a choice between reading the code and not reading the code? Certainly. This is the work that remains for CCS regardless of where it fits on a Venn diagram.
on December 9th, 2007 at 2:20 am
Emphasis is important indeed. I think that emphasizing code or computation is not only a question of limited time. Choosing for programable poetry was/is for me as a practitionner nothing more than going to a new kind of perception, if I may say “text free”, going on with some main principles of visual, sound, action poetries,as poetical expressions AGAINST printed poetry. I would say, but I am not sure if I’m right, especially of the consequences of this idea, that epoetry focuses on computation despite the code. I think that executability is essential, as the basic condition of epoetry. Studying code leads to a better comprehension of what programable art deeply is, can be, and/or would be. One the critical studies (in general) functions is to make clearer to everybody, audience and pratictionners, what is essential in one case and what not. Reading the code can be important in both situations, but with other outcomes.