Wednesday, January 02, 2008
Critical Code Studies, Conway’s Law
I’ve received an email informing me of the emergence of a new blog devoted to Critical Code Studies:
Announcing the launch of a new collaborative blog titled Critical Code Studies . The blog is dedicated to exploring interpretations of computer code within cultural contexts. Rather than focusing primarily on making code function or even the pursuit of “beautiful” code, critical code studies brings in critical theory to examine the ways in which the lines of code reflect, shape, and reproduce our culture including aspects of class, gender, race, sexuality. These criticisms include both the context for the code’s creation and the ways in which it circulates in culture. Rather than one specific lens, CCS names a growing collection of methodologies for making/finding meaning in code.
I sent the email to some friends in the software business and one of them, Richard Fritzson, pointed me to the Wikipedia entry on Conway’s Law:
Conway’s Law is an adage named after computer programmer Melvin Conway, who introduced the idea in 1968. It concerns the structure of organizations and the corresponding structure of systems (particularly computer software) designed by those organizations. In various versions, Conway’s Law states:
* Organizations which design systems are constrained to produce designs which are copies of the communication structures of these organizations.
* If you have four groups working on a compiler, you’ll get a 4-pass compiler.
Or more concisely:
* Any piece of software reflects the organizational structure that produced it.
While I tend to be skeptical of any enterprise whose name takes the form “Critical X Studies,” where X is the domain under investigation, there’s certainly room to look at the cultural production of computer code and the styles of computer languages and programs.
On Protocols, in honor of the TCP/IP silver anniversary.
Conway’s Law sounds a bit like the “Utopia as Leviathan” theory: Any ideal society is a self-portrait of the idealizer.
There was a session on this at last year’s (2006, Philadelphia) MLA. One doesn’t just look at the executable code. The comments, structure, history, programmer (and what the programmer has also done), even the funding source are subjects for analysis. There’s also a tendency to broaden the scope: one of the panelists pointed out that the I Ching is an executable text.