9002776

code as art

I wrote this in response to the following question on the opensource mailing list:

Just want some opinions on a couple questions.  Sincel iterature and other forms of writing are copyrighteds hould code be?  To take it further forms of writing can be though of as art, does or can computer code be considered art?

I would argue that code is art, and that the artistic nature of code lies within the algorithm as well as the elegance of implementation.  To appreciate code as art, I think it’s first important to realize that typical feats of engineering, design, architecture, or any sort of utilitarian object can be appreciated as art.  Now, the question of whether having something displayed in an art museum makes something art is open to a great deal of debate, but I think that it’s certainly an affirmation that a work at least has some artistic qualities.  So, go to any art museum and one is sure to find numerous instances of objects, which initially had a great deal of utilitarian value (ceramics, armor, tools, etc), now appreciated as art.  Similarly, take something like a Frank Llyod Wright building.  I’d really like someone to argue that doesn’t at least approach art.  I think the last example is particularly interesting because with Wright’s architecture, the form is completely inseperable from the function.  That is, rather than the artistic qualities being simply adornments to a utilitarian central theme, the artistic elements are the central theme, from which the utility follows.

So, I think that code can be considered art.  Let’s take a pretty easy example.  Last year at the Wexner center, they had a clock which was synchronized with satellites and displayed images of human faces for the hour, minute, and second places of the digital clock. Obviously for the art to exist, it requires the use of some sort of programmed code.  It is important to make the distinction between this sort of art, where the executable code is essential to the work as a whole, and computer-generated art such as the latest pixar movie or one of Csuri’s works.  In these cases, the art is a by-product of code, rather than the art being inexorably linked with running code.

So where does this leave source code?  I would argue, that if one accepts that the image clock example represents code as art, then source code must also be art.  Since running code is just a transformation of the source code (that is, the essential quality, the algorithm is preserved), the source code has all of the artistic qualities of the executing code.  This follows the argument, that I agree with at least, that a print of a famous painting still constitutes art since it captures the essential quality of the artwork.  The fact that it is viewed with some extra levels of indirection is inconsequential.  To argue that source code is not art, because it is just a string of ASCII text would be like arguing that a work of “real” art is not art because it cannot be perceived by all viewers in the same manner. Certainly a computer programmer, viewing someone’s source code, could gain a reasonable perception of it’s manifistation when viewed through multiple levels of indirection (e.g. compiled, linked, loaded, and executed). Another good example of my claim is HTML.  One can generate some visual objects which, I would argue could easily qualify as art.  However, if one actually wanted to obtain the work of art itself, one would receive an ASCII text file.  I think one could argue successfully that the artistic properties of the work are inherent to the ASCII file, whether it is viewed in a text editor, or interpretted by a web browser.