In his 2016 State of the Union Address, the first initiative President Barack Obama introduced was “helping students learn to write computer code” because this skill had become necessary for economic and individual advancement. Just two years previously, Obama—or, the ”Coder in Chief” as he was known during Code.org’s Hour of Code challenge—became the first president to write code, and his participation and call for national efforts to teach programming signals the reach the coding literacy movement has achieved (Mechaber, 2014). Annette Vee’s Coding Literacy: How Computer Programming is Changing Writing begins with these campaigns for everyone to learn to code to consider how programming is being positioned rhetorically, historically, socially, and culturally as a literacy, advancing an important call for scholars outside of computer science to attend to programming.

In the first chapter, "Coding for Everyone and the Legacy of Mass Literacy," Vee examines coding literacy campaigns to show how programming is rhetorically positioned in popular discourse as a literacy, especially as a moral, technological, or individual “good” (p. 45). Although this appears to be new, Vee traces these campaigns’ origins to the 1960s development of BASIC, which was designed to increase access for non-specialists, such as students. Vee identifies four central arguments of coding literacy campaigns: “individual empowerment; learning new ways to think; citizenship and collective progress; and employability and economic concerns” (p. 45). By looking at how programming has been rhetorically positioned, this chapter illustrates programming’s shifting social value and position in 21st century education and individual lives. Because of the rhetorical power of literacy—”if enough people call something literacy, it becomes literacy”—, Vee shows how the risks of being left behind come from not only the particular set of skills programming includes but also the rhetorical force of literacy itself (p. 51).

Chapters three and four seek to provide a more historical perspective to our own literacy moment: “when code is infrastructural but the ability to read and write it is not—yet” (p. 39). Each chapter reads the emergence of programming through a moment of profound transition in the history of textual literacy to show how, like writing, programming is “entering literacy” (p. 39). Chapter three, “Material Infrastructures of Writing and Programming,” traces a parallel history between writing’s emergence as a necessary material infrastructure in the eleventh through thirteenth centuries and the rise of programming in the mid-twentieth century. Together, these histories show how bureaucratic information needs provided roots for material intelligences to become literacies. Chapter four, “Literacy for Everyday Life,” examines the rise of mass literacy in the eighteenth to twentieth centuries to consider how literacies move from institutions to individuals. This history serves as a lens for our current moment, as people find themselves surrounded by computation in their offices, homes, and even on their bodies. Through this comparative history, Vee shows how, as writing created a “literate mentality,” programming is spurring a “computational mentality,” with programming becoming an increasingly less specialized and more necessary skill for individuals.