A Journal of Rhetoric, Writing, and Culture

Alexandria Lockett: I am Not a Computer Programmer

Alexandria Lockett, Pennsylvania State University

I am not a computer programmer. My ability to execute a programming language extends as far as hypertext mark-up language (html), which I learned in the days of crude computing better known as Web 1.0. However, these past couple years, I have been using Ubuntu, the user-friendly Linux desktop environment founded by Mark Shuttleworth. Ubuntu is a Bantu word which means “humanity unto others.” This concept not only inspired this piece, but embodies the spirit of generosity embedded in open-source participation.

After a couple of weeks, Ubuntu seemed to completely revitalize my cheap old laptop. The system always booted immediately and it didn't freeze up when I ran multiple programs. Through Ubuntu, I gained access to multiple workspaces, as well as the Ubuntu Software Center, where I could download and try hundreds of free applications. Still perplexed that I didn't have to pay for the operating system, I asked my neighbor (who would soon become one of my best friends), "Why everyone didn’t drop their costly, barely functioning Windows OS’s?" Open Source, it seems, thrives on synchronicity. The moment I conspired to murder my machine, a computer programmer appeared at my front door to help me move a heavy piece of furniture. That day my mind was permeated with my technological conflict. I never wanted to use Windows again, and I couldn’t afford the expensive membership fees of the iCult. My consumer power seemed muted by my sense that each company was my only option. Of course, my entire technological socialization process in American public schools involved two options: Mac or PC. Both of these companies’ global dominance—over market shares, GUI’s, and hardware designs—made me feel like I was somehow committing some awful sin when I lusted after the possibility of having additional computing choices. The good neighbor suggested that I stop using proprietary software altogether and consider switching to Linux. I heard the word Linux and I automatically felt crushed. I remembered my high school dork friends with their terminals and their occasional visits with the FBI, on account of their cracking credit cards. How was I to use Linux?


Since I could burn ISO files, I was thrilled I could test out Ubuntu on my sluggish machine. Not only was it super easy to use, but I was pissed that I didn’t know this option was available to me. Moreover, I felt dumb not knowing that it wasn’t necessary to buy a new computer: Why couldn’t I differentiate between a hardware and a software problem? Why had I failed to distinguish a computer from a kitchen appliance such as a blender or toaster—objects you toss in the garbage when they no longer work? The Mac/PC binary logic informing the tiny section of my brain devoted to ‘technology and troubleshooting’ blurred the communication functions occurring between these two entities entirely.

I asked my neighbor, who would soon become one of my best friends, why everyone didn’t drop their costly, barely functioning Windows OS’s. After hundreds of thousands of hours, over many long days and long nights, I understood concepts like modularity and proprietary lock-in. In fact, I encouraged him to use the latter concept as a framework for an introduction to computer science course. We discussed some of the ways in which we could resist his pedagogical training. He was frustrated with the textbook and lesson plans because these materials took for granted that C++, albeit the industry standard, was the best or only programming language students should learn. Although the roboticist was required to teach over one hundred and fifty students C++, I urged him to compose his own textbook so that everyone could enjoy two major learning opportunities that integrate technical knowledge and civic participation

First, the format and content of the book would both dismantle the idea that computer science courses should be apolitical. Wikis, by nature, indicate that a given project is too vast for one author due to its need for ongoing, frequent revision. They are never ‘done,’ so to speak. Furthermore, students’ participation on the wiki placed the burden of ‘textbook’ authorship on the entire class, which would decentralize my friend’s role as the sole source of knowledge. He knew that the wiki-format would require students to demonstrate their inquisitiveness. Additionally, he could track and evaluate user participation, which helped him customize lesson plans and additional wiki content with their concerns and abilities in mind. As a result, students practiced three core values of critical pedagogy and hacking: collaboration, active participation, and a curiosity about how things work. Next, he could include supplementary material on social issues in computer programming and computer science, as well as career advice for interested students. Using the hacker name ‘Anova8,’ I collaborated with him throughout the summer on some of this Media Wiki-powered book. Indeed, I received a most interesting peer-to-peer education regarding the fundamentals of computer science while he learned about composition and rhetoric pedagogy. In exchange for his knowledge about types, variables, operators, loops, arrays, and structures, he acquired key lessons in Jane Addams’ radical pragmatism, Jacqueline Jones Royster’s definition of literacy for socio-political action, Critical Pedagogy, and Resistance Theory. We established that programming instruction was inextricably related to and dependant on writing expertise and opportunities for persuasion. Both writing and programming receive widespread attention as subjects in which few can do well, but nearly everyone needs to learn. Since these practices are so deeply embedded in many people’s daily lives, such subjects have a strong influence on how we perceive and measure social progress. However, the dynamic, social, experiential instruction that help us learn these techne is often overlooked.


Through my neighbor’s literacy sponsorship, I came into contact with sites like Slashdot, ReadWriteWeb, and Reddit. I wasn’t interested in “becoming” a member of this community, but I did want to know more about the people who wrote the code—their personal experiences, how they interacted. I wanted to visualize their values, beliefs, and ways of seeing the world. I eagerly read Richard Stallman’s Manifesto, learned more about Linus Torvalds, Eric Raymond, Alan Turing, Steven Wozniak, Larry Page, Sergey Brin, and Ward Cunningham. When my printer and scanner hard drives weren’t compatible with Ubuntu, I perused many discussion threads and figured out how to identify credible advice on how to install them (this was before the HPLIP was accessible in the Ubuntu software center). Successful installation was proof that I could trust the counsel of others. However, I will admit that I did not bother to try out any instructions written by any poster whose post didn't consist of well-sequenced, highly detailed complete sentences. Soon, I began to recognize the characteristics of the Free and Open Source Software Community and its massive impact on other communities. It had a complex history, social languages, intertextuality (i.e. GNU’s not Unix), discourses, conversations. All the ‘stuff’ of a discourse community. Software developments that facilitate(d) web 2.0, our dependence on ‘free’ applications, and Linux servers running major businesses and the interwebs is striking evidence of its power.


Indeed, I am not a computer programmer, but I began to recognize several commonalities between my perspective as a writing teacher and my friend’s perspective as a programmer. The objectives of having access to code, tinkering with the code, running programs for any purpose, and sharing improvements with the community so everyone benefits were tantamount to my pedagogical approaches to rhetoric and composition. Shortly after I changed my operating system to Ubuntu, I renewed connections with those “dork” friends from high school, who were excited to talk about Linux--and hacking, friendship, consciousness, trance music, and the earth's future. Our long conversations helped me recognize what we had in common all along: a love of wit and play, an insatiable curiosity for learning about how things (and people) work, and a knack for solving problems.

I do not feel as if I need to be a programmer to faithfully represent and perform values held by practitioners of Computers and Writing. I have repeatedly stated that I am not a computer programmer, but I am a hacker. I am able to recognize how bureaucratic linguistic practices inhibit me from “tinkering” with language. I see how the humanities’ obsession with authors and owners inhibits many people from collaborating, dialoguing about, and innovating scholarly research. In fact, I’ve been on the border my whole life—switching back and forth from Standard White English and African American Vernacular English, Midwest Plain Style and Decorous Southern Speech. I’ve used the invisibility and visibility of my identity to push the limits of argumentation beyond the confines of ‘normality.' I’ve been translating language as long as I can remember, trying to understand these rules, poking fun at them, playing with them, succeeding or failing at remixing and subverting them to open up new paths for language use.



Computational literacy should include a wider range of competencies besides just ‘technical’ literacy. Coding is a dynamic performance, a demonstration of various levels of competency including: how and why I do code or whether or not I can recognize the ways in which the code influences specific programs I choose to run--in both human and machine interactions. In particular, working with multilingual writers in the writing center for the past year has enabled me to recognize the benefits of using computing as a metaphor for helping them understand grammar. For instance, their understanding of the article as an operation for quantity, or a marker with the capacity to establish degrees of specificity, enables them to go beyond a mechanical tendency to always put ‘the’ in front of a noun. Rather, these writers can now decide whether or not they should:

  1. transform girl to a proper noun and eliminate the need for an article altogether
  2. indicate how many ‘girls’ exist within that context
  3. specify what ‘the girl’ is doing, or where she may be located

By understanding what an article does, multilingual writers can practice grammar with their communication aims, instead of a textbook's static examples, at the forefront of their decision-making. Through my pedagogical and personal experiences with language, I’ve learned to understand the operational limits and potentials of grammar as code, and recognize its inseparable relationship to technical, cultural, and political ecologies. This talk, for instance, is a program I’m running to facilitate trust between us so that we can acknowledge the value of anyone who wants to tinker with these discourses for the benefit of helping others quench their thirst for knowledge or find out which beverage motivates them to pursue their drink.


I am not a computer programmer, but should I desire to close the wide gap that exists between what I need to know and what I can possibly learn to become one, I have access to every resource available to me to do so vis-a-vis open educational resources. I don’t know C++, Ruby, Python, or Perl, but I was able to get a sense of the politics surrounding their developments and implementations by visiting their websites, reading discussion forums, current events, trade and scholarly journal articles, and talking to individuals teaching and learning these languages. I highly benefit from experiencing intertwingularity, or the principle that governs the architecture of these collaborative feedback systems whose countless distributed autonomous communities defies unproductive arbitrary hierarchies. I do not teach with technology without discussing the power distributions of socio-technical systems, the ethical responsibilities they inflict upon human users, and the ways in which our grammatical code and linguistic arrangements make it difficult for us to talk about emergence. We need hackers of all gradients—from the computer programmer to the radical pragmatist instructor to the DJ to the comic—to resolve the broader issues of helping students develop enough confidence and generosity to hack language, improve their writing, and self-consciously participate in a much broader effort to do humanity unto others.