Create Art and Learn to Code with Processing
Davide Della Casa is one of four developers who have created sketchPatch, a Processing learning environment where developers can experiment with code in order to create dynamic art sketches, or indeed can create dynamic art sketches in order to experiment with code. I asked Davide how sketchPatch came about, who it is aimed at and why they chose Processing.
Davide recently spoke about sketchPatch at Ignite London 3.
What is sketchPatch?
SketchPatch is an online programming site where people create original Processing sketches, or hack other people’s sketches with ease, share and collaborate on a program. All of this directly from their browsers. It is a place where we hope people can put work and watch it grow… hence the name, sketch patch!
We launched sketchPatch a year ago, we run workshops and school activities with it, we’ve exhibited it in the Open Source Embroidery exhibition in Sweden, in the MOCSA museum in San Francisco, more recently in the Watermans gallery here in London as part of Unleashed Devices, curated by TINT and Watermans Gallery. Also we’ve been in the London Digital Design Festival at the V&A Museum, 25th and 26th September.
Considering it’s been one year, we are really quite pleased with the airtime it’s been given. Keep an eye on our blog for future activities!
Where did the idea for sketchPatch come from?
The seed of the idea really came from a mashup of two memes that have been around for some time: a) the idea that one doesn’t need to be a professional programmer to enjoy sketching simple programs (or “sketches”) and b) that whatever activity we are doing on the computer offline, we can do it directly on a web page and enable immediate collaboration and sharing.
Who is sketchPatch aimed at?
SketchPatch is aimed at existing Processing programmers, and also at newbies and potentially at illustrators and graphic designers who want to try a new way to generate graphics.
Who has created sketchPatch? What are your backgrounds? Where are you based?
Sophie McDonald and myself started implementing the idea a couple of years ago. Jonny Stutters contributed immensely, and Tim Ryan‘s “processing.as” engine really made it all possible. So it’s four of us, with different backgrounds. Sophie is a video artist and tinkerer and tutor, she is co-founder of the women’s art and technology networking and education initiative MzTEK.org, Jonny works in medical research and is a digital sound artist and active member of OpenLab, Tim is a computer scientist
already with an impressive array of projects out there, while I work mostly in IT corporate projects. And this is not counting the authors of other supporting libraries and widgets that sketchPatch relies on. We are based in London, and Tim is in the Boston area (Massachusetts).
Why develop sketchPatch?
Well two reasons, we thought it would be great to create and hack sketches directly online, and also we wanted to implement our ideas and see what the result would be, who would use the site, and what would amazing creations would people come up with.
Sophie is a newbie programmer, also interested in new methods of education. From this perspective we wanted to develop something that bridged a shared learning environment that was accessible and friendly to use. We did see similar initiatives and sites based around other languages, but at the time of inception nothing was there for Processing, so we went on to fill the gap.
Of all the programming languages on the planet, why Processing?
SketchPatch wants to be an easy-to-use creative platform for artists, designers, hobbyists, and Processing was the obvious choice as it had been designed also with these things in mind and was the programming language of choice for artists. It is also open source, and this is was important to us from the perspective of sketchPatch as a learning environment. If people became familiar with Processing on sketchPatch, it is easy and accessible to move onto the Processing platform, and would not be limited to one platform.
So really Processing hits the sweet spot in terms of reach, language/IDE accessibility and creative capabilities. Plus there are three main solutions (and some variations) that enabled the type of online programming that we had in mind. There are alternatives to sketchPatch based on other languages, but really Processing made the most sense to us.
What other online programming learning tools do you admire? Why is sketchPatch different?
I believe the seminal work was the “Design by numbers” online applet by John Maeda and the MIT media lab, which offered a way to play with code and produce graphics, so a huge credit goes to that work. The next wave were the “Try Ruby!”, “Try Haskell!” and “Try Python!” interactive websites, were you can try those languages directly in your browser. That’s genius. The internet has turned us into instant non-committal learners, and learning a language without even having to download a development environment is absolutely great.
In the Processing arena, a great tribute goes HasCanvas by Robert O’Rourke, which went live a few months before sketchPatch. To our knowledge, he created the first Processing online playground. After HasCanvas and sketchPatch (chronologically), Robert also contributed to the latest http://sketch.processing.org, which resides on the official processing site.
Another more recent project is called “Studio sketchPad” by Ari Bader-Natal and allows concurrent editing by multiple programmer, a very interesting direction. Also Scratch recently has launched a completely “online” version.
SketchPatch is a mix of some of these elements, it’s based on Processing (like HasCanvas), but we think sketchPatch is more focused on accessibility and enabling immediate find/copy/modify/sharing, together with a way to look at the evolution history of the sketch (similar to Wonderfl).
But really there are many many other sites that inspired us, we have a list on our “similar sites” page in the community area.
Is sketchPatch Art or is it programming?
sketchPatch as a project is an artistic endeavour to explore the process of experimentation through play, and of code evolution through social collaboration. The deliberate implementation of the ‘Parent’ link for sketches that have been copied is a way to track that.
As for the content, we’ll let the community decide. So far there are a couple of scientific/programming sketches, like the “bifurcation diagram of the logistic equation” (http://www.sketchpatch.net/view/XADRhjvwQn8/) and a few cellular automata (like http://www.sketchpatch.net/view/bZbtrorNIH0/). Other than that, there seem to be mostly graphic experiments, many of them have interesting deepness to them like “canon by translations” (http://www.sketchpatch.net/view/1H3Qvo07LB3/).
What plans do you have for sketchPatch?
We are very happy with how sketchPatch worked out for learning and random artistic expression so far. From a technical point of view we think we should a) continue to improve the processing emulation b) push all the code open source and c) make some future-proof changes to the processing interpreter. Apart from the technical aspects, it’s a great platform that lends itself to so many activities that we’d like to explore. Think for example of live coding or featured events a-la layer tennis. But in order to do that we’d like to expand our core team. SketchPatch needs to grow its talent pool and bring onboard more inspiration. We hope that by releasing the entirety of sketchPatch open source will get more people interested in participating.
We have two major site areas going live the coming month, a tutorial, a profile page, a renewed gallery and one feature we are secretive about that we think it’s going to be very cool.
What have you learned from its use? What has surprised you?
People prefer to create their own sketches rather than modifying other people’s. Every two months we feature an artist to build “featured sketches” for us: none of the artists has built on top of other people’s sketches, they’ve all come out with original sketches. Which is great, but maybe highlights the conundrum that creative people mostly like to create something *from nothing*. The “decode” logo hacking scene worked very well, but that one had a direction and narrower scope, open-ended freedom to change the work of others seems to be more difficult to embrace, maybe it’s too dispersive.
The complete opposite is true for learning and workshops. We run workshops (called “sketchTag”) where sketches are passed in turns around a circle of participant programmers, so no-one owns any specific sketch, rather everyone owns a piece of every sketch: we are very surprised how well that works. It gives participants a sense of responsibility in passing a working sketch to the next person, and at the same time they enjoy a healthy detachment from the sketch, they are less sensitive about mistakes or paralysed by questions on its final design, purpose or end.
sketchPatch would make an excellent iPhone/Android app – any plans to port it to a mobile platform?
SketchPatch’s sketches play, albeit slowly, on Safari Mobile (editing doesn’t work yet), and we believe they play on the Android browser too. We’ll work on making the code creation and editing part to work on mobile devices soon (just like http://code.google.com/p/pjs4ipad/ does). A lot could be done beyond that, such as native applications (bare some restrictions on the App store). No shortage of possibilities, but we’ll have to focus somewhere, maybe native mobile devices support will come when mature native Processing implementations will become more widespread.
How is sketchPatch funded? Is it intended to be a moneymaking venture? If so, what is your business model?
We have almost no running costs for sketchPatch, we develop it in our spare time out of sheer passion for delivering something beautiful that people could find useful. So we don’t have a pressing need to make money out of it yet. That said, we get the occasional commission to run workshops that make use of sketchPatch features (zero-installation, zero-configuration, instant-sharing and editing). For example we did workshops to 7 and 8 grade students of the City of London Academy in Islington. It worked very well, so we’d definitely like to do more of that with schools, universities and other interested organisations.