How paintr Works

paintr came to me very quickly just before my show in Belgrade in 2005. Originally intended as an artistic web service, it ended up as “art for the age of web services”. The original went offline when I switched web hosts a few years ago. Updating it from its php-and-blog 2005 version to a 2010s cloud-based node.js and tumblr version made sense conceptually.

paintr is a simple implementation of a naive model of how art is made. An artist is motivated by aesthetic concerns to find imagery to hang those concerns off of and thereby presents a work in a signature style. paintr finds a recent palette on, searches for the words that palette is tagged with on flickr, autotraces the image to simplify and abstract it, and then applies the palette to the results randomly.

This abstracts and unifies the image, obviously aestheticising and transforming it. The result is a kind of Stella-ish artistic ironisation of a verbal description of art. It’s also often fun to look at.

How draw-something Works

The version of draw-something on tumblr is a simple model of creative drawing. It’s meant to be a minimally defensible model of art, although probably a pre-postmodern art.

The program generates some random points (between 4 and 20, as these seemed like good numbers) and joins them in the order that they are generated as a polyline.

It finds the topmost point of the polyline and positions the pen a little way above it. Then it draws around the polyline, moving forward a little each time and being careful not to get too close to or too far away from it. As the program is simulating human drawing it drifts a little in direction each time. When the outline returns to be close enough to its original point, the drawing stops. The quality of the resulting line is a product of each of these factors.

This drawing model was informed by research into human hand movement but mostly it was derived from watching myself draw. This is a difficult thing to do, as drawing isn’t a very conscious activity. Eventually I would start drawing a line, stop myself, and try to think about what I’d been doing. This

The original inspiration for draw-something was Harold Cohen’s AARON, but draw-something’s output has never resembled AARON’s as both the task that the programs attempt and the way they approach it are different.

draw-something Rebooted


A new old version of draw-something is now online.

You can see it (and follow it on tumblr!) here:

draw-something started as a Prolog program called “Got To Start Somewhere”, which described both its algorithm and how I was feeling about art at the time. I quickly switched to Common Lisp, but once one of the earliest versions was working I created an ActionScript port to run online. This was made using a Free Software ActionScript compiler rather than Flash.

I wanted to show draw-something running for a talk Jim Andrews invited me to give, and I wanted an excercise in JavaScript, so I ported the ActionScript to node.js and to HTML5 canvas. Doing this and preparing for the talk inspired me to resurrect paintr as well.

It’s such an old version of draw-something that it has a couple of bugs that were later fixed. I fixed the most egregious one but there’s another that will crop up soon, finding it is left as an exercise for the audience. I also re-enabled the skeleton drawing code (the skeleton is the guide figure that draw-something draws around), using non-repro blue instead of the original bright red.

So welcome back draw-something online!

paintr Rebooted


I’ve updated paintr for the 2010s. It’s now implemented in node.js running on OpenShift and posting to tumblr.

paintr’s new address is .

The images are inline svg, which displays well on the main page and in the individual article pages. If you follow the blog (please do!) the images don’t show in the previews on your dashboard. Clicking through displays the images properly.

I’m wary of using proprietary and cloud web services. In this instance the source code and generated art is available, so it could be rehosted easily.



I was at Free?! ( as a speaker.

The first part of the day was the brunch club:

We gathered around tables to discuss various free culture-related topics and write notes on the tablecloths. These were later hung in the gallery upstairs as part of the “(Mis)Interpreting Free Culture Exhibition” art show accompanying the event. The show is excellent, with a wide range of thought-provoking work.

I was on the “tools” table. We discussed what makes a useful free culture tool, which came down as much to social and community affordances as technical or legal ones. Blender’s community and funding was repeatedly mentioned as a model. During the discussion I encountered some excellent projects I hadn’t heard of before:

The second part was the Plenary Debate, which brought together some leading free culture film producers to discuss how they made their projects work.

It was refreshing to hear a candid discussion of the frustrations and strengths of crowdfunding approaches based on the long-term experience of the panel members. Jamie King in particular communicated the unpredictability of funding, the harsh statistics of who actually pays for downloads, and the joys of being able to pay artists when they do.
It was also good to see the new Blender short film on a big screen thanks to Ton Roosendaal:

The last part of the day was the “Winters Night Copyright Fairytale” event in the evening.

This brought performances and talks on various free culture themes together with a framing animation and narrative in the form of a fairytale.

With the benefit of hindsight I wish I’d fitted my talks more to the fairytale theme, but I did manage to accidentally fit my slides to its typographic style.

Femke Snelting framed the story with readings from remixed newly out-of-copyright texts by Rabindranath Tagore and Virginia Woolf made using NLTK. Nikita Mazurov’s passion for pirating movies made me wish I could have got to the London Cryptofestival ( ) where he was also speaking. Paul Keller’s presentation of the history and possible future direction of Creative Commons gave me a real confidence boost in that organization. And there was much more. The event was recorded and I think it will be online early next year.

The slides from my talks are available here:

Free?! was very much about stepping back and taking stock of Free Culture. I found being reminded (and helping to remind others) of the origins and issues of Free Culture inspiring, and looking seriously at where and how it needs to be rethought invigorating. As a result, I know what I have to do next.

Do have a look at the website if you couldn’t make it to the event.