"The as yet undreamt of things that will be displayed"

May 20, 2010

Studio Sketchpad was named after the two web technologies on which the application is built: the Sketch from Processing and the Pad from EtherPad. (The Studio metaphor used throughout the site was inspired by the writings of John Seely Brown, which I'll save for another post.)

I'm embarrassed to say that when I chose the name, I was unfamiliar with Ivan Sutherland's massively influential Sketchpad program, described in his 1963 PhD dissertation at MIT. Sutherland demonstrated a new type of human-computer interaction, in which a person could create and manipulate graphical constructs by pointing a light pen at the computer display. The drawing programs on your brand-new iPad can't do half of what this program did almost 50 years ago. Several video recordings of demonstrations of the system have recently found their way online, so you can see it for yourself.

I should have learned about Sutherland's Sketchpad program years ago. What other landmark systems am I still totally unaware of? Are students in computer science programs introduced to the defining systems in various sub-fields? Personally, I would have found a course on the history of influential computer systems to be a fascinating introduction to the discipline.

Etherpad + Processing = Sketchpad. The studio is now open.

May 19, 2010

Consider the following canvas, created with Processing.js:

It's pretty, it's simple, and it looks a bit different each time it's rendered. Can you mentally picture the code that would generate this canvas? Here it is. On the web, the ability to "view source" is an invaluable tool for understanding how something works. It is the difference between the transparency of HTML and Javascript and the opacity of Flash animations and Java applets.

Now look again at the canvas. Would access to the source code really tell you the full story? Did the author pre-envision this canvas, and then directly express this vision through code? I would argue that, more often than not, the canvas is the product of an iterative, non-linear process. If so, what can we learn from gaining access to the process itself?

When you create a canvas in studio sketchpad, every step along the way is recorded for others to observe. This behind-the-scenes look into the evolution of a canvas is enabled through a repurposing of the now open-source Etherpad codebase (thanks, Google!).

You'll see that on the time-slider for the history of the canvas, a number of markers punctuate the line. Each marker corresponds to a point at which the authors viewed the canvas while creating it. These markers serve as guide-posts for others later exploring the evolution of the sketch.

There's plenty more to come, but enough is in place for you to step inside and check it out. The studio is open.