Code Crafting
Eugene Lang College Lib Arts: Liberal Arts
CRN: 16670
Credits: 4
Computer programs are commonly characterized by inhuman speed, invisibly minute silicon inscriptions, expansive data sets, and the rigid formalism of syntax rules. By contrast, the set of practices that we call “craft” are usually smaller, slower, and readily comprehensible at human scales. While we often think of these two domains as diametrically opposed, this class will endeavor to examine them together: considering the importance of craft in the historical development of computational machinery, as well as the ways that coding today can be understood as a craft practice. In The Software Arts, Warren Sack, offers an alternative history of software that traces its roots to the step-by-step descriptions of production processes from the workshops of eighteenth-century artists and artisans; and in The Art of Computer Programming, influential computer scientist Donald Knuth wrote that we should think of software engineering as “an aesthetic experience much like composing poetry or music.” In this class, students will learn coding through processes of experimentation and improvisation with digital machinery and other materials, as well as learning techniques of good software craftspersonship. Coursework will include using a coding framework such as Processing or Scratch to create algorithmic designs to run on a programmable embroidery machine, weaving circuits into wearable digital devices, and printing generative artworks on a Risograph machine as an alternative to screen-based output. Through concepts like interaction and data visualization, students will learn about the affordances of using code to produce craft, rather than producing objects directly by hand. No prior coding experience is required. Students will need to bring a laptop computer to class, and can check one out from the university if necessary.
College: Eugene Lang College Lib Arts (LC)
Department: Liberal Arts (LIB)
Campus: New York City (GV)
Course Format: Seminar (R)
Modality: In-Person
Max Enrollment: 18
Add/Drop Deadline: February 3, 2026 (Tuesday)
Online Withdrawal Deadline: April 14, 2026 (Tuesday)
Seats Available: Yes
Status: Open*
* Status information is updated every few minutes. The status of this course may have changed since the last update. Open seats may have restrictions that will prevent some students from registering. Updated: 8:28pm EDT 10/4/2025