Category: HelloWorld

Paintings of computer code

A painting of an Oracle java API

So, I’ve decided that I want paintings of computer code hanging on my wall.

I started thinking about this last week when I saw the image above.

It’s a painting that was introduced by Oracle in a big lawsuit filed against Google. You can read about it in a great piece by Sarah Jeong, but in brief, Oracle sued Google for $9 billion. Why? They claimed Google had violated copyright by illegally using a snippet of Oracle code. Oracle argued that if you wanted to use that code legally — without violating copyright — you needed to transform it somehow, so that you could claim “fair use”. For example, you could take the code and … render it as a painting! To show what this would look like, the Oracle lawyers actually created that painting of the code seen above. (Oracle lost the argument, thankfully, though the larger question around the copyrightability of APIs is still pretty freaky; you can read more in Jeong’s piece.)

Anyway, quite apart from the legal questions at hand, I was quite taken by the idea of … having a painting of computer code hanging on my wall.

We’re surrounded by software all day long, but we don’t actually look at it, ponder it, gaze at it. Plenty of artists these days use computer code to make gorgeous art, of course. And there are many artists who’ve inverted the flow and used digital scenes for traditional art, as with the video-game paintings of my friend James Barnett (one of which I have hanging on my wall.)

But me, I also dig the idea of the code itself being the subject of a traditional art like oil painting: “Still life with Javascript.” Having that stuff hanging on your wall would — maybe? — make the code running our world an ever-so-slightly more concrete thing.

That Oracle “painting” wasn’t very aesthetically interesting; it’s just a screenshot printed on a canvas, I think. So as an experiment to weirdify it, I ran the picture through Waterlogue, an app that takes photos and transforms them into watercolor-style images:

A "waterlogue" version of the Oracle "fair use" API painting

Eerie, eh? Then I went around online and found some other examples of famous pieces of computer code, and used Waterlogue to turn them into paintings.

The results were pretty striking. Here’s a chunk of code from MS-DOS 1.1, from the section where it’s doing a sector write:

A painting of MS-DOS code doing a sector write

Here’s a little piece of the code for the original Wolfenstein game (not sure what this chunk does):

Painting of computer code from Wolfenstein

Here’s a piece of the first version of MacPaint, involved, I think, in calculating the angles of shapes:

Waterlogue 1.2.1 (66) Preset Style = Blotted Format = 6" (Medium) Format Margin = None Format Border = Straight Drawing = Fountain Pen Drawing Weight = Heavy Drawing Detail = Low Paint = Rich Color Paint Lightness = Medium Paint Intensity = Normal Water = Cherenkov Blue Water Edges = Blurry Water Bleed = Minimal Brush = Coarse Detail Brush Focus = Everything Brush Spacing = Wide Paper = Soft Red Paper Texture = Medium Paper Shading = Light Options Faces = Enhance Faces

This is a chunk of Will Crowther’s FORTRAN from the original Colossal Cave:

Waterlogue 1.2.1 (66) Preset Style = Bold Format = 6" (Medium) Format Margin = None Format Border = Straight Drawing = #2 Pencil Drawing Weight = Heavy Drawing Detail = Medium Paint = High Contrast Paint Lightness = Medium Paint Intensity = More Water = Tap Water Water Edges = Blurry Water Bleed = Average Brush = Fine Detail Brush Focus = Everything Brush Spacing = Medium Paper = Watercolor Paper Texture = Medium Paper Shading = Medium Options Faces = Enhance Faces

The top line reads “TOTING(OBJ) = TRUE IF THE OBJ IS BEING CARRIED”, though you can’t really see it when the font is so small. I zoomed in a bit more closely on the top left corner and turned that into a painting of its own …

Closeup of watercolor-ified code from "Colossal Cave"

… which lets you see the actual language and syntax a little more clearly.

I think my conclusion here is that a painting of code would look really cool if the text were a) prettily distorted by the medium (watercolor, in this case; or simulated watercolor anyway), but b) with a font-size big enough that you could still make out the text. So what I’d really like is code painted on a canvas or perhaps seven or eight feet square. Which would be nuts but great!

Has anyone actually heard of artists doing paintings of code? I poked around online and didn’t find any, but it seems like that someone has probably done this …

Update: On Twitter, Simon Carless pointed me to these fantastic posters that Ben Fry made in which he maps out the flow of the source code for several Atari games. And: You can order them as posters! Here’s the one for the game Combat; embiggen it to grasp the detail of the work here …

Ben Fry's illustration of the source code of the Atari game Combat

Share

The new site

From 2002 to 2013, I blogged at my old site Collision Detection — and had a riotously fun time doing so.

That site ran on Movable Type, a blog-engine that was super cutting-edge in 2002 … but today is a creaky mess; so much so that it became somewhat unpleasant to use, which is part of the reason I drifted away from dailyish blogging. (The other part was the well-known problem bloggers have: Twitter was more fun, and where all the audience was!) Anyway, I kept intending to relaunch Collision Detection using WordPress, but every time I investigated doing so, I’d run into a welter of technical problems: Preserving the formatting, preserving all the delicious Google manna I’d built over the years, figuring out how to prune all the spambot comments. (Or better yet, figuring out preserve all the spambot comments, since they’re probably the closest humanity has yet gotten to passing — in a practical sense — the Turing Test, as I discovered the night I bored a sexy-talk-chatbot into silence.)

Oh, how I dithered! Anyway, I finally decided …

  • to leave Collision Detection up and untouched, with all of its crepuscular Movable-Type code intact.
  • to take this URL, which I’d never really used, and make it a “personal site”: An archive of my journalism, stuff about my books, glamorous headshots, etc.

Thus this site!

And I must say, WordPress is soooo lovely compared to Movable Type.

(BTW, a big shoutout to Bad Johnny, the designer who created the blog theme I’m using here. It’s clean and crisp and I love it.)

 

 

Share