Dylan Lederle-Ensign bio photo

Dylan Lederle-Ensign

Graduate Student at UC Santa Cruz. Studying games, software and ultimate frisbee

Email Twitter Github

In computer coding, it is considered best practice to leave comments for other users of the code, most often yourself in the future. Comments surround functional pieces of code, specially designated for the computer to ignore at compile and run time. In good software, comments should concisely explain what is going on in a confusing bit of code. Descriptively naming variables is also an important way to clarify their purpose. Variables are important for the proper functioning of the code; however the computer does not care what designation is chosen for them, so long as it is distinct from other variables. Choosing variable names that describe what they represent matters only to clarify their purpose for human readers of the code. Sometimes, just a few words is all it takes.

Mark Sample describes the controversy that erupted when a variable was discovered in the commercial game Dead Island (Techland, 2011) named “FeministWhore”. People were, rightfully, offended by this, and the studio took appropriate steps to discipline the coder responsible. Variable names, particularly such provocatively named ones, are within the purview of Code Studies. They contribute to the rich textuality of code and, because they are not bound by programming language specific reserved words, are a way for coders to establish voice and style.

However, as Sample points out, this code was found in a “leftover debug file” (ibid. quoting a statement from Techland). He labels it “Zombie Code,” code which was supposed to be deleted, does not form any processes in the work, and yet has been given new life. This is what Wm. Ruffin Bailey has called “fossil” code (Bailey, 2008), deleted or uncompiled portions of the software which nevertheless have been discovered.

Bailey covers the “Hot Coffee” controversy that occurred when popular video game Grand Theft Auto: San Andreas (Rockstar, 2004) was discovered to have a sex minigame contained on the original game disc. Despite the fact that this was inaccessible without downloading a mod to flip a bit in one of the game’s configuration files, there was considerable controversy in mainstream media outlets, and the game was temporarily pulled from store shelves.

In his eponymous essay on Critical Code Studies, Marino declares that “scholars of CCS will analyze the extra-functional significance of the code”. In that respect, comments and variable names are up for consideration. Near the end of the essay, Marino cautions against drawing conclusions that do not properly address the code as a functional object, and which do not shed light on the code itself. I would also caution the opposite, to avoid drawing conclusions based solely on the code, ignoring the electronic literature that it produces.

The fringe cases noted above offer an interesting challenge for critical code studies. They were not intended to be viewed, and so could be considered outside the text of the given game. However, given that most games do not intend their source code to be viewed, all of code studies operates within this fringe. Despite their similarities, these examples are actually quite different in their critical significance.

In the case of Dead Island, the Zombie Code had no effect on any other layer of the game stack, and was offensive only at the level of reading the code as a text. This should effect the interpretation of the code as a text, but should not influence our perception of the game itself. In the case of “Hot Coffee,” San Andreas with the mod enabled is essentially a different game. It would be comparable to considering two different editions of a published book, in which the author has added a new chapter. “Hot Coffee” introduced new processes to the game, changing every layer of the game’s stack except platform. Due to the drastic changes it introduces, “Hot Coffee” is a more significant object for a full-stack code studies approach.

It is debatable whether “extra-functional” aspects of code such as comments and variable names are as significant as Marino believes them to be. However, the next section provides an example of comments which drastically change the interpretation of a work.