Computational Drawing Tools

Materials in this presentation are cribbed in part from:


Paint Programs, A Quick History

Sketchpad (1963), Ivan Sutherland. First vector drawing program.

SuperPaint (1972), Richard Shoup et al. First frame buffer and raster drawing program.

Looom, by Finn Ericson and Eran Hilleli.


Open (Art)Works

Various strategies by artists for creatively augmenting the interactive experience of drawing.

Zach Lieberman at Eyeo 2015 (watch from 7:20):

Land Lines (2017) Zach Lieberman

  • Harmony, Mr. Doob
  • Alchemy, Karl DD Willis. (“Shout at the computer. Use your voice to control the width of a line or the form of a shape…. Mirror draw. Draw mirrored symmetrical forms in realtime.”)

  • Shrub (2014), Jeffrey Scudder

Doodal (2014), a fractal drawing tool by @:

AlgoRat Sweater Creator (2019), by Connie Ye, Tatyana Mustakos, Char Stiles, Caroline Hermans

A Sequence of Lines Traced by Five Hundred Individuals (2010) by Clement Valla


Experimental Tools

Rhonda Forever (2003), Amit Pitaru et al.

ShadowDraw (2011), Yong Jae Lee et al.

Magenta Magic Sketchpad

Magenta Sketch-RNN multi-predict drawing completion demo

Four Experiments in Handwriting with a Neural Network (2016), Shan Carter, David Ha, et al.

Teddy (1999), Takeo Igarashi

MonsterMash, 2020

Edges2Cats (2017), Christopher Hesse

Self-Organizing Textures (2021), Alex Mordvintsev et al.


Multiplayer/Collaborative Drawing


Antagonistic Drawing Tools


AV & Performance Tools

Oramics Machine (1960s), “drawn sound” machine by Daphne Oram [play from 1:52]

Sonic Wire Sculpture, Amit Pitaru, 2003:

Christine Sugrue & Damian Stewart, A Cable Plays (2008)
A Cable Plays

Lines, Zach Lieberman & Theo Watson, 2007:

SingingFingers (Finger Paint with Your Voice) by Eric Rosenbaum & Jay Silver, 2010:


Drawing & Painting Games

Algorithmically scaffolded, gamified drawing.

The Act of Drawing in Games (2018), by Jonah Warren

Crayon Physics, 2007:


A Possible Assignment: Drawing/Software

Create a program which expands, augments, muddles, complicates, implicates, simplifies, questions, spoils, undermines, improves, or otherwise alters the concept or act of drawing.

Your program may be designed for one, two, or many simultaneous users — or none. It may assist, hinder, extract, protract, analyze, synthesize, etc. any part of the process and/or products of drawing.

You may use any hardware device and/or programming language you prefer, but your solution must involve the creation of custom software, executed by a machine. Here are some potentially helpful resources:

    • Simple Shared Drawing Canvasapp • code (a live shared drawing canvas)
    • Shared Drawing Canvas, with Persistenceapp • code (online drawings stored in database)