Notes for Robert E. Cummings “Coding with power: Toward a rhetoric of computer coding and composition ”
Key concepts: audience construction, copyleft, meta-cognitive sway, rhetorical triangle.
Related theorists: Applen, Hayles, Claudia Herbst, Andrew Hunt, Alfred Kern, Kittler, Knuth, Lacan, McDaniel, Paul LeBlanc, Ong, Stallman, David Thomas.
(430) The 2002 Computers and Writing Conference hosted a session that asked this question: Would the terms of open source software licensing be desirable for traditional academic publishing?
Seems to miss important points of copyleft expressed in GPL, four discrete freedoms enumerated by Stallman.
(431) Composition scholars have begun
to look to the software publishing world for a solution. . . . Thus,
no one can take the free program and begin charging for it, for as
long as it contains the copylefted program, reselling the program is
illegal under copyright law.
(431) Surely, these composition scholars reason, with access to traditional academic publishing stifled under the profit-motive system, scholars should adopt the open source model of publication.
(431-432) Both types of writers—writers of code and writers of text—write for vastly different audiences and with that would seem to be vastly different products, but this paper will show that the underlying model of composition holds true for both communities. . . . While Paul LeBlanc's publication of Writing Teachers Writing Software in 1993 has served as a landmark for this perspective on writing, and further attention was garnered in a 1999 special issue of Computers and Composition entitled “From Codex to Code: Programming and the Composition Classroom,” informing scholars in the composition community about the benefits of examining coding as a writing practice has remained difficult. There are at least two important sources beyond the literature of the composition community to consider: new media theorists, such as Friedrich Kittler and Claudia Herbst, and the authors of practical programming texts.
(432) Herbst finds in code a new form of text with tremendous cultural influence and political power but with only a select few with access to read it.
(432) How does the programmer write for an audience that can both operate the program as user and read the intent of the code that creates the program?
Meta-cognitive sway over thinking processes common to programming and literary composition; realization that the writing affects later thinking (Hayles).
At its heart, the comparison between writing and coding is
instructive to both pursuits because the work product of both groups
the thinking processes that create text. That is to say that both
writer and coder are moved by the manner in which their text, once
written, impacts the thinking process that composed it.
(433) The quality of refining an idea is one that coders often cite as a compelling and rewarding aspect of their work. Their texts also speak back to their processes of composition, as revealed in the reflections on coding in some standard texts. . . . The act of applying the logic of a programming language to a problem refines that problem, positions it in a new light, and reveals the biases or faults of the thinking that first framed the issue as a problem. Coders also describe their processes as an artistic one. [quotes Knuth]
(433) Then perhaps the next step is the integration of programming languages with human languages. In fact, some documents already do exactly this by providing computer code alongside a human-readable narrative; the text of the document is human readable while the code can be processed by a machine (Ramsay, 2002).
(433) Relatively scant attention has been paid to this perspective by mainstream composition approaches, and, further, whenever attention has been focused on this intersection of writing within two distinct fields, it has suffered from a lack of a unified vision. Therefore, this essay will investigate the rhetorical triangle as a common touchstone for both coding an composing.
Coding and composing with two triangles
(434) In the conventional writing model, the writer seeks to reach an audience through text.
Figures of rhetorical triangle and coding triangle: Writer-Text-Reader and Coder-Program-Machine.
The coder seeks to reach an audience through his or her writing too,
only the coder's first audience is a machine (one might argue that
the coder's audience is the computer user instead—an important
distinction that will be answered herein), and the coder's language
is computer code. . . . But regardless of the coder's tool, the
machine will be the receiver of the text; like the writer who
produces a text that he or she cannot further mediate, so too does
the coder surrender the written text to an audience. . . . Similarly,
the code is out of the programmer's hands, and the machine is in
control of determining its meaning.
(436) And in both situations, the writer's text must be processed by the editor/compiler before it can be passed on to the audience.
(436) While the student programmer is much more likely to view the machine as the audience for his or her writing, as it is the machine that must first react to the text, the professional coder is more likely to envision the software user as his or her audience. . . . In the traditional writing model, professional writers' texts must satisfy some sort of editor before reaching an audience, and professional programmers must first please the machine before they can please their clients.
(436) This move toward a machine code that retains a parallel human readability is articulated in Andrew Hunt and David Thomas' The Pragmatic Programmer (2002). They have explicitly encourage plain text programming and eschewed expressions that are needlessly obscure to human readers.
2. Audience invoked and audience addressed
Ong audience construction applied to code readers.
Even if one rejects the whole-hearted juxtaposition of the rhetorical
triangle with a coding triangle, we have to acknowledge that what
occurs in the coder's mind as she or he envisions the machine's
reception of the program can inform much of what composition studies
have had to say about how the writer envisions his or her audience. .
. . By interjecting an awareness of the rhetoric of coding to Ong's
construction of audience, one can gain a sense of how coding can
re-inscribe and complicate our construction of just one tip of the
(438) According to Ong, the writer constructs his or her fictional audience to substitute the immediate response of a physically present audience.
(438) The coder must perform the same act, but instead of gauging human reaction, she or he anticipates the machine's reaction. . . . These performances to the coder's previous texts create a library of responses within his or her memory, and the coder draws upon them just as the writer draws upon feedback received from prior texts, whether or not the coder's memories were emotionally charged (like most traditional writers, coders often rebuff the idea that the rejection of their text is an emotional experience). Additionally coders, like readers of fiction, are affected by other programs they have observed. A coder is just as likely to recall his or her human experience as user of a graceful piece or programming and allow that feeling to drive code authoring as is Ong's hypothetical student likely to recall Huck Finn in composing “How I Spent My Summer Vacation.”
(438) The argument made here is not that the coding and rhetorical triangles need to be identical in order to inform each other, only parallel. Ong's assertion of fiction's influence on writing does raise another important way in which the coding and composing triangles differ yet maintain informative parallels: through the reader's conception of the author.
(439) Readers of traditional text also don't respond to the ideas that the writer had when composing text. They, like the machine, must process the text on the page rather than the idea in the writer's head. The human reader reading is certainly much more complex and undefined than the machine processor, but the human and machine both cannot respond to the writer's intentions. They can only respond to the text. Thus, it is easy to understand how the computer—a machine, fast, obedient, and without intelligence—can be an invaluable tool for teaching precision in writing.
(439) If Kittler “relates phonography, cinematography, and typing to Lacan's axiomatic registers of the real, the imaginary, and the symbolic” (p. xxvii), would the programmer's conception of his or her code not represent a commingling of these three historically contingent discursive networks? The coding process, when viewed as an act of writing, captures this “registering of the real”—without intervening authorial intent—which Kittler associated with all three technological media constructs. When the coder conceptualizes his or her desired outcome and then renders those concepts in program code, the act of programming invokes Kittler's typewriter—the reduction of imagination into barest linguistic signs.
Using Kittler and Lacan connect programming to framework of composition.
(439-440) But the subsequent rendering of that code by the machine invokes both aspects of the gramophone and film. . . . For Kittler, film links the imagination of the film creator into the processing of multiple singular images, offering a viewing of the creator's imagined image similar to the image of self which confronts the infant. Just as Lacan's startled and emerging infantile self must reconcile the mirror image of herself with her mind's eye, so too must the programmer reconcile the juxtaposition of the machine's reaction to her programmed code with her desired intent. Thus, Kittler's insistence on viewing texts as material and historically situated events provides a theoretical framework for positing the desires and results of the programmer within the framework of composition.
Using code to teach writing
(440) Alfred Kern (1987) created a class at The Air Force Academy that combined the goals of teaching grammar, logic, and BASIC into one unit.
Teaching a passion for revision not one of the generic side-effects noted in early studies of programming instructions.
(440-441) But as teachers of writing, we should not be content to use computer programming solely as a grammar tool. We can also use coding to teach a passion for revision. As has been discussed herein, one of the common statements of coders and writers alike is that they both enjoy their craft because of its ability to help them re-envision problems in a new light. . . . But the advent of markup languages like XML that allow students to begin with a base of traditional language and modify it with computer code have made the act of porting computer programming languages into the composition classroom even simpler than the dozen BASIC commands that Kern employed in 1987.
Argues XML easier to work with than BASIC, although there are losses for choosing this language; language choice also needs to be useful and unlikely to become obsolete.
(441) Learning a second programming language seems akin to learning French in order to make a short point or two about English grammar. . . . If composition teachers were to select a programming language for inclusion into the pedagogy of teaching writing, it would need to be a stable and robust language that is freely accessible to all and that also minimizes risk of obsolescence while maximizing the applicability of the programming knowledge in other classes.
Guidelines are starting small, disavowing coding expertise, being clear about grade impact, using personally familiar language, minimizing transition time, and considering markup languages; compare to Applen and McDaniel.
Until the development of XML, the code portion of the marked-up text
was usually intended to affect how the traditional language was
displayed, but XML has expanded that content to include how that
language can be processed by the machine.
(442) A comma was out of place. Once repositioned correctly, the screen sprung to life with waterfalls of data. In silence, we all smiled as the presenter quietly said “Now that's writing with power.”
Cummings, Robert E. "Coding With Power: Toward A Rhetoric Of Computer Coding And Composition." Computers And Composition 23.(n.d.): 430-443. Web. 4 Jan. 2013.