Programming, Subversion, and Failure

In class, we keep returning to the notion of a potentially subversive (e.g. feminist, queer, etc.) programming language. Because I apparently volunteered to write a substantial blog post on the lightest reading week of the semester, I’d like to use this space to explore the possibility of subversive programming further by connecting together several of the ideas that we’ve touched on so far and examining them through the lenses of critical feminist and queer theory. Specifically, I’ll discuss and ask a few questions about the potentiality of a language or program existing outside the confines of human structures or systems, and then I’ll posit the idea of deconstructing these systems from within their limits through different manifestations of failure.

Fig. 1 The wonders of visual programming languages - behold an art piece inspired by the motion of a human dancer.

Fig. 1 The wonders of visual programming languages – behold an art piece inspired by the motion of a human dancer.

I was initially drawn to Processing, the language we explored this week, due to its interactive capabilities. From the examples offered in the “Hello” segment of the tutorial, it seems that visual processing languages like this one strive to deconstruct the boundary between programming and the lived world to an extent that is not quite as prominent in the other types of languages that we have examined. This is largely due to its interplay between the program and natural human motion or activity. I was tickled by the idea of moving particles with one’s hands to reveal digital microcosms and impressed by digital performance art inspired by and structured around human motion.

These realities call to mind the discussion from last week regarding a programming language

Fig 2. The wonders of visual programming languages - behold an art piece inspired by my own internal state at this point in the semester.

Fig 2. The wonders of visual programming languages – behold an art piece inspired by my own internal state at this point in the semester.

that might be written in response to human facial expressions. An emotional or affective language would certainly act as a relief from the logic and rationality that seems to form the current framework of the field. However, what if we were to take this idea a step further and remove the human component entirely? What would a programming language that responded to natural elements look like (e.g. weather patterns, animal movement, the growth and decay of organic plant matter, etc.)? If a program is being written alone in the woods and no one is around to operate it, is it still running? Like a distant watchmaker, if a human sets a program in motion and then leaves it to its own devices, does that program still belong to the human? Is it still governed by human ideologies and structures?

 

While the questions posed above might provide a possible escape from the human ideologies that structure language and meaning (programming languages included), I am still rather pessimistic. In Gender Trouble, Judith Butler notes that because feminism is a reaction to a phallogocentric system, it exists as a product of this system. Thus, it must work to restructure the system from within rather than function beyond it as a type of utopic alternative. Likewise, because programming languages are produced by human systems governed by certain ideologies, these ideologies will always be present, to some extent, in the languages. Thus, a subversive programming language might have to work within the current computational limits (e.g. must follow a type of syntax, must be reducible to 1s and 0s, must be able to be read by a computer…to a certain extent) in order to deconstruct these ideologies through subversive results. One possibility of doing so is through embracing opportunities for failure. I am using the term “failure” specifically in a manner that is in line with contemporary queer theory and its turn toward the anti-social. Writers like Lee Edelman and Judith Halberstam have embraced the notion of “failure” as that which subverts normative views of success. This includes a vast array of possibilities including decentering the family, rejecting reproduction or futurity, and actively forgetting the past.

On a basic level, failure can be written into the processes of certain programs. Bogost touches briefly on failure in games, citing examples like New York Defender (the game where the player takes the role of a shooter aiming at planes headed toward the World Trade Center until he or she is eventually overwhelmed). In this case, the game operates as it is supposed to (as perceived by the player), but there is no chance of achieving a win condition. On a deeper level, programming itself is riddled failure in the forms of glitches or “surprises.” From Turing’s comment, “Machines take me by surprise with great frequency” to Zach Adams’s remark, “We didn’t know that carp were going to eat dwarves…but we’d written them as carnivorous and roughly the same size as dwarves, so that just happened, and it was great,” programs constantly behave in ways that even those writing them cannot predict. In Expressive Processing, Wardrip-Fruin suggests that these moments of unintentional failure reveal the underlying mechanics and processes of the program. I am curious as to whether these moments can be harnessed and intentionally implemented in order to point to certain elements and expectations in programs (from games to word processing software), and by extension, reveal aspects of the “real world” ideological mechanics, systems, and processes that contributed to their creation.

I’ve come up with a few examples that that might work to this effect, but this idea is still clearly in the works. For instance, a game that follows a typical consumerist pattern (e.g. the player collects money, buys and finds better objects, owns and/or builds houses/structures, etc.), but literally crashes every time that the player reaches a certain threshold of wealth might comment on capitalism or the idea of a person being successful insofar as the amount the own or produce. Similarly, a word processor that deletes specific chunks the writer’s material, interjects its own content into the writing after the writer has closed the document, or fails to save the writing entirely might comment on ideals such as intellectual property or the presence subjective viewpoints in fields typically perceived to be objective such as history or science. These both seem incredibly frustrating, but then again, that’s the point. In what other ways could failure be written into programs to reveal flaws in larger social systems?

One thought on “Programming, Subversion, and Failure

  1. Hi Simula, it sounds like you have the makings of a really cool end of semester project. At what point is the machine still tied to humanity (and thus, all of the ideologies attached), even if it “runs” on its own? (Maybe kind of like those numbers stations that Sara showed us). If we can say the machine can part from ideological influence, how can we cultivate such an outcome through programming? I was really struck by your example of the word processor here: “Similarly, a word processor that deletes specific chunks the writer’s material, interjects its own content into the writing after the writer has closed the document, or fails to save the writing entirely might comment on ideals such as intellectual property or the presence subjective viewpoints in fields typically perceived to be objective such as history or science. These both seem incredibly frustrating, but then again, that’s the point. ”

    What an awesome writing assignment this could be; I could see it having some interesting procedural rhetorical dimensions to it, depending on the crux of the writing task. In addition to your examples, here’s just some other ones that popped into my head (and let me just preface that these are kinda boring and less cooly political as yours!): randomly changing font, spacing, and other layout features that purposely violate the MLA style guide to comment on conventions of language; doing something like the love-letter generator to substitute words with various levels of connotation to see how a piece changes (e.g., substituting “critique” for “attack”) to see how word choice positions a writer as “hostile” or “polite”, and what that matters, if at all (and why we care about that, and in what context we care about it…e.g., trope of the “angry feminist” could be interesting here); adding random endnotes with non-sequitors to talk about what it is like to divert a reader’s attention from the continuity of reading…maybe talk about distractions more generally, and what it means to step outside the text..even if for nonsense.

Leave a Reply to Django Cancel reply

Your email address will not be published. Required fields are marked *

*
*
Website