Open Processing
Published April 1st, 2008 in General, ITP, Teaching, processing.orgJust wanted to give a quick plug to ITP student Sinan Ascioglu’s new site: www.openprocessing.org — a community “flickr-like” site for Processing sketches. It’s terrific work and I’m hoping students in my courses will find it helpful for organizing portfolios of their work. I’m hoping to be able to help Sinan by figuring out a way to auto-generate thumbnails from uploaded Processing sketches. Seems to be the one missing piece (it’s a pain in the neck to generate those screenshots yourself). Any ideas? Post here in the comments.

Hey Shiffman, thanks for the reference.
I am also thinking about auto-generating issue, but couldn’t find a solution yet. I had this idea once; if I can run an applet inside an applet, then I can get uploaded applets inside one, get a snapshot through the outer applet, and save it in a folder. Do you think that would be possible?
So I can run each uploaded piece once, in this thumbnail generating applet….
maybe something like this could help you:
import java.awt.Graphics;
class ThumbCreator(){
public static void main(String args[]) throws Exception {
Class cl = Class.forName(”applet name”);
Constructor cc = cl.getConstructor(null);
Applet a=(Applet) cc.newInstance(args);
Graphics g=new Graphics();
a.paint(g);
ImageIO.write(g,”png”,”thumb.png”);
}
}
I’ve not tried it cause here I don’t have the java compiler, but I could try to implement it for you if you want, this lacks parameter passing that could be needed for some processing apps and could be implemented too.
Hmmm…
I just saw a demo on this:
http://opencode.media.mit.edu/
It uses a server to compile the Processing sketch. If something like that were integrated, perhaps it’d be possible to run an app that grabbed every 20 frames or something for the first 200 frames.
Alternatively, maybe it’s better to have something like MovieMaker that generates your thumbnails client side — only grabbing some random frames. I like the OpenCode idea, but I somehow feel more comfortable worrying about keeping things working on the desktop … and I know everyone doesn’t want to see ALL my code. (Yikes.)