What more can we do with this?

Moretti’s assertion of the notion of distant reading as a reaction to the flaws in the close reading process spoke to all the concerns of my 20-year-old undergraduate literature major heart (may she rest in peace). As quoted in the Ramsay text, he notes, “[T]he trouble with close reading (in all of its incarnations, from the new criticism to deconstruction) is that it necessarily depends on an extremely small canon.” Oftentimes, I found myself getting so close to a particular text that I could no longer even convince myself of the arguments I was making. I mean, I could only disregard author’s intent to a certain extent. Maybe they chose to use “azure” rather than “blue” because they were a pretentious fuck and not, in fact, to conjure up images of Arabia…I digress. This method seems like it could be useful for identifying broader trends within and across certain historical moments. For instance, if I could see a wide range of accounts of the word “azure” being used in conjuncture with references to the Middle East during the literature of a certain time, I might be convinced. (Not sure if this is exactly the point of distant reading, but I’m still grappling with it a bit.)

 

The JStor project could definitely be useful for some of the stickier terms I’m looking at in my studies. I submitted a “queer world making” query (or should I say “queer-y”…that joke has literally never been made before). Because this is a tricky concept to nail down, I’m interested in seeing the approaches taken to it across a variety of fields. In fact, I was quite surprised by the number of results the search turned up. Furthermore, I think that a method similar to this would probably be quite useful outside the range of peer-reviewed journals. I would love to examine digital rhetoric through this lens, for instance. Just a few points of interest might include which words appear most frequently in certain digital spaces, which sites are arguably more friendly toward (or perpetuate more rhetorical activity regarding) the interests of certain communities, what the ideal message length is for a successful online dating interaction, etc. As I stated before, I’m still wrapping my mind around the notion of analyzing texts from this cold and distant approach, but I’m sure I’ll muster a few more uses for this method after some practical experience.

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?

Necrocrow the Crazed Beguiler and the Pigbushel Fortress

As a masochist, I don’t really mind Dwarf Fortress. I’m not proud of what I had to do to get it to run, but the deed is done. Now, after two days of unspeakable horrors, I am happily dwarfing.

Fortress 1: I’d Rather Not Talk About It

Right, so, because tutorials are for squares, I started out by poking around a pocket-sized dwarf map on my own. After fifteen minutes of texting screenshots to my friends with the caption “Look what I have to do for homework!” while my dwarves, presumably, drank themselves into oblivion, I grew antsy. Another fifteen minutes passed. The dwarves continued to mill about (pun not intended). Fine – tutorial it was.

In terms of gameplay, I found the following sites quite useful:

http://dwarffortresswiki.org/index.php/Main_Page

https://dftutorial.wordpress.com/

Using these sites, I more or less got the hang of the basic operations of the game. I chopped trees, gathered plants, carved out a couple of caves, and constructed a carpenter’s workshop. Unfortunately farming was beyond me. Since there was no rhyme or reason to my digging, the map looked very unappealing after an hour, and, being a creature of high aesthetic taste, I grew disgusted with my dwarves, the game, and myself. I abandoned my travesty of a fortress to ruin. The dwarves are still there drinking, I imagine.

Fortress 2: Pigbushel

Apparently, in my first go, I had completely missed the preparation screen. Not so this time around. I named my group Necrocrow the Crazed Beguiler and my fortress Pigbushel. I surveyed my dwarves’ skillsets, and I used up all my points on starting goods and creatures. While playing, I was able to successfully mine to create a fortress with separate rooms, workshops, a kitchen, etc. For a while, however, farming was still beyond me. Eventually, I figured out the 3D aspect of the map and reasoned out that I had to dig in some semblance of soil to grow subterranean crops. By the time I cottoned on, however, it was past midnight, I had run out of food, and my dwarves grown in number and looked murderous, so – like a cruel and distant god – I abandoned them to their fates yet again.

Fortress 3: Pigbushel Returns 

At this point, I can comfortably say that I have a basic understanding of the sustenance portion of the game. I created a pretty nifty fortress complete with four farms, multiple storerooms, a dormitory, separate bedrooms for each dwarf, a meeting hall/dining room, a still, a kitchen, a carpentry workshop, a mason workshop, and several other workshops (fig. 1). Two or three seasons have passed, though, and I haven’t noticed any immigration. I’m hesitant to start a military until I have more than seven dwarves, and I’m a bit concerned that I might have screwed something up in my starting settings. Since nothing appears to be happening apart from buzzards stealing my food (fig. 2) and the occasional haunted cloud of dust floating by, I’m considering retiring this guy and starting another fortress for next week.

Screen Shot 2015-10-14 at 11.35.57 AM

Fig.1: Pigbushel

 

DF Buzzard

Fig. 2: Filthy Buzzards

Human Procedure: [I Initially Forgot a Title]

An interpretation of the Brown, Maher, and Losh readings suggests a deconstruction of the human/machine (human/animal-machine) binary, as they argue that both entities operate – or have the potential to operate – along the same procedural lines, whether it is rhetorically or ethically. Brown makes this claim through the figure of the “robot rhetor,” Losh through the idea of computer as both shaper of and audience to human rhetoric, and Maher through possibility of artificial moral agents (AMAs). Essentially, while computers generate output based on their programmed input, humans communicate or make decisions based on their own “input” (information systems based on ideologies, past experiences, beliefs, drives, affects, etc.). As the two continue to shape one another’s products and modes of production, the characteristics that are “natural” to each become blurred.

I had a bit of trouble envisioning the “humanity” (for lack of a better term) of machines until I was able to conceptualize the mechanical nature of human procedures, something that became uncomfortably lucid through an analysis of my own pedagogical experiences. Though this revelation (which I will flesh out) was rather grim, Brown does note, “rigid machines are ‘only one type of machine among many other types of machines’” (508). Thus, as is often the case in structured systems, the possibility of resistance, creativity, or innovation, lies within the manipulation and interpretation of boundaries from within the system. In accordance with the arguments presented in these texts, I’d like to briefly sketch out two personal examples of humans performing in a mechanical manner due to both human and machine enforced limitations, and then open up the possibility to explore flexibility within these limitations specifically in the case of human and computational procedural rhetoric.

In the fall of 2014, I taught a remedial composition course at a community college that services a rural demographic. I was presented with a textbook, another instructor’s syllabus, and the directions to teach the students how to perform to the standards of college writing. We started with parts of speech, worked our way through appropriate sentence structure, and ended on the five-paragraph essay. Articulating the fears of many rhetoricians, Brown notes, “describing rhetoric in terms of procedures might be seen as reducing the art to mere rules” (496). For me, teaching writing became a procedure of “programming” these rules into my students. When I explained my misgivings to a professor at my undergraduate university (“But grammar is a tool of the oppressor! Am I merely another gatekeeper?”), she explained that it was a necessary evil; they needed these skills to function in the real world. Thus, I became a teaching machine limited by a series of other social systems. If I did not teach my students how to write a five-paragraph essay, they would fail at the procedure of the college English course progression and, in turn, fail at the procedure of functioning in the “real world.”

I was fortunate enough to be granted the opportunity to see this pedagogical procedure from another angle – that of the enforcer. I briefly held the position of a standardized test-scoring drone for a major educational products and services company (hint: not ETS). Here, I was instructed to read student essays and score them on the numerical scale 0 through 5. These scores were determined by a series of formulaic standards not all that different from Brown’s aforementioned “rules.” I could not sway from these rules due to random validity checks: essays that had already been assigned scores that I was required to match. In accordance with Losh’s account of the responses to Miller’s attempt to employ AutoSpeech-EasyTM (a computer that reads and reviews student English assignments), I became a scoring machine. Losh states that “the primary theme that she observed in the responses that she collected was skepticism that a computer could ever appreciate the nuances of human affect and recognize ‘creativity, appropriateness to context, the expression of emotion, and individual and cultural differences’” (8). Likewise, due to the established standards for scoring and the computerized enforcement of the validity test, even if I appreciated human “affect,” “creativity,” “emotion,” or “cultural difference,” I could not score according to it. Thus, my performance became no different from that of a computer grader. Losh goes on to explain, “The secondary theme…was anxiety about the potential loss of a dynamic public sphere in which audiences participate in complex and messy feedback loops of communication in which power relationships can be challenged” (8). Again, based on this anxiety, I fulfilled the role of a computer. Because the scoring mechanism was limited to the assignation of a numerical score, I was unable to communicate with the student or give any sort of constructive feedback. Additionally, because the student was unable to revise or explain, I always held the dominant role in the power relation (or at least acted as an extension of the formulaic standards’ dominant role).

At times, then, scenarios that detail humans working in accordance with procedures and machines reveal the mechanical nature of human performance. However, modes of resistance to these limitations exist within the systems themselves both in the model of human as machine and that of machine as human. I have a few ideas pertaining to the pedagogical implications of both models, but also many questions.

Citing Bogost, Brown explains, “what we typically think of as ‘breaking procedure’ is actually just the process of crafting and implementation of a new procedure. In this sense, all rhetorical action…is machinic” (498). We see this “crafting and implementation of new procedure” occurring in composition classrooms all the time – even within the school and social sanctioned requirements. While I was required to teach my students the mechanics of writing and essay structure, I had the possibility of allowing them to demonstrate their knowledge through a variety of procedures. For instance, instead of having them take a grammar final, I scored them based on their performance in a grammar Jeopardy game. Additionally, final papers take many different forms. Students can create blogs, newsletters, texts with visuals, and other multi-modal projects to demonstrate their understanding of writing and argument. While these alternatives may appear to break the procedure of a traditional composition classroom, they are really just a series of new or adapted procedures that fall within the limitations of the same system. They do, however, demonstrate the flexibility of the teacher machine.

With the machine as human model, I’m still having a bit of trouble conceptualizing possibilities, though these, of course, lie within the flexibility of software (perhaps, even, software that has yet to be written). In terms of my experience as a test scorer, software was definitely a limiting factor, as it did not allow me to score for creativity or provide feedback. Vee and Brown cite Leblanc’s argument, stating, “writing teachers should write their own software not only because of the constraints that programs put on composition but also because of the deeply intertwined relationship between writing code and the writing of human language” (5). This idea of the limitations of software is reiterated through the other articles as well, so I’d like to finish by posing a few questions about the possibility of software design to a pedagogical end.

What might software designed by writing teachers look like?

What possibilities do the limitations of current writing software prevent students and writers from achieving?

If students were asked to articulate their frustrations with the current composition classroom, what software could they craft with their teachers to combat these issues?

Would a coding language designed by rhetoricians look different than those written by computer scientists? How?

Soy Spambot

Forget love. Forget religion. Forget art. Learning Python is apparently all I need in order to experience the whole spectrum of human emotion. I’ve rejoiced at the success of squaring a list of numbers, fallen into the pits of despair at my utter inability to write a function that will spell a word backwards, and ascended to the level of a king – nay, a god – at producing a workable Battleship game. In all honesty, though, I’ve had a bit of a time trying to wrap my mind around the idea of coding as literacy. At first, its syntax’s inflexible nature struck me as limiting and frustrating. However, after discussing the abilities of Twitterbots and – especially – examining the educational and political use of games, I’m interested in seeing just how far the possibilities of coding can go. I’d hazard to extend the notion that creativity of the code writer is not necessarily displayed through word choice, syntax, or other aesthetics commonly associated with the language arts, but rather through the execution of procedure and the potential of that procedure.

 

I feel like the Twitterbot activity really brought out the malicious aspects of my otherwise charming and soft-spoken nature. My bot is currently following only one person – a friend from back home. I’d really like to program the bot to regenerate her posts and add the ultra-mature phrase “in bed” to the end of them – just to assure that my Arizona legacy is never forgotten. My spambot army doesn’t have to stop at merely trolling my unassuming buddies, however; I believe they can be deployed for widespread social purpose. I was fascinated by the brief discussion of Finn Brunton’s Spam: A Shadow History of the Internet, and I’m curious about the possibility of engaging with a massive demographic on an impersonal level to convey a single (usually unwanted) point. As some of you might have noticed, I’m well on my way to becoming an obnoxiously militant vegan. (Joke: “How do you tell a vegan?” “Don’t worry – she’ll tell you.”) I’m wondering if I could create a Twitterbot that could act as my minion as I embark on this quest. Perhaps I could program one to search for statuses and images pertaining to dairy products, establishments like McDonald’s or Five Guys, and the ever-baffling national idolization of bacon and have it respond with classic, lovable phrases like “Your stomach is a graveyard!”

All I Code Hope For: Coding, English, and a Vaguely Over-Ambitious Project

When I signed into Codecademy this week, I found myself face to face with a 16% complete Python course, a system reminder stating that my account had been inactive for two years, and a sense of slowly rising panic. During the liminal space between finishing undergrad and finding a “real job,” I had briefly dabbled with code, gaining a limited knowledge of HTML & CSS and JavaScript, and promptly forgetting it in the following “gap” years. Fortunately, due to the logical structure of code and the site’s accessible system, I found it relatively easy to pick up where I had left off. At the moment, coding feels a bit like plugging in quite a bit of work for a rather anti-climatic payoff (great, I spent twenty minutes poking about with parentheses and double equals signs so that my computer could tell me that 5 is not, in fact, equivalent to 3). However, I understand the importance of a solid foundation, and I’m excited to see what I can potentially accomplish with code, especially in terms of games, simulations, and other interactive programs.

Additionally, due to Ford’s “What is Code?” article, I downloaded Xcode-beta from the App Store, and I’ve been experimenting with the Swift language in the program’s “Playground.” I’m finding it interesting that, while syntax and terminology vary from language to language, the general principles remain the same (e.g. a series of simple cause/effect commands contributing to a complex program’s makeup and functionality). Furthermore, because the program includes several pre-established frameworks and libraries to assist the user with creating applications for Apple systems (iOS, watchOS, and OS X), I believe that it will be a useful tool for exploring the practical results of learning code and potentially building a final project for this class.

Coding ties directly into studying English because I can use it as a tool to express the ideas that I am already interested in studying, such as queer theory, feminism, and gender, to a larger, more diverse audience and through a wider variety of media. Traditionally, studying English amounts to composing a written analysis with the intention of publication or presentation. Relatively speaking, the audience that reads an article published in an academic journal or attends an academic conference isn’t very large due to factors such as physical accessibility and complicated jargon. By coding, I can present my ideas in a more consumable format (anything from a mildly amusing blog post to a game) and present it to anyone who has access to the Internet (which is still problematic due to socio-economic factors, but this blog post is already too long). I’m especially interested in basic simulations that allow the audience to interact with the topic through a series of choices. This interest is inspired by an online “trans* life simulator” that I recently played, which allows the viewer a brief glimpse into the life and struggles of a trans* person today. By creating a simple game such as this one, I hope to help bridge the gap between theory and lived experience.