ABSTRACT

In Dreaming in Code, Scott Rosenberg examines the ways in which large tech-

nology projects come to fruition, explaining that people “make mistakes, and they

correct them. They test and fix. They iterate” (2007, p. 298). Rosenberg extends this

emphasis on iteration by equating software development with composition, suggesting

that “programming today remains an act of writing” (p. 298). This analogy rings true

for writing instructors who will recognize the suggestions that technology projects

can be seen as creative (p. 299), social (p. 300), and emergent (p. 338). Rosenberg

borrows from writing to help explain software development. We’d like to return the

gesture, reversing the currents flowing through the programming-writing analogy and

taking from software development insights like the value of reusable code and of

thinking in layers.