Wednesday, June 6

OpenFrameworks - Interview with Zach Lieberman




According to Casey Reas, this year will see the release of 3-5 books that deal with Processing. I must admit, it never quiet dawned on me how pervasive this software has become... until recently. But it is a new project by Zach Lieberman & Theodore Watson that has peaked my interest of late.

'OpenFrameworks' is a library of code, in some ways compariable to Processing, which aims to provide artists/designers with a simplfied route into C++ programming. Using C++ has advantages over Java, namely speed and the all important low latency useful for camera/computer vision work. OpenFrameworks is currently pre-release, but I am hoping it is ok to post the link here for anyone who is interested in checking it out.

Below is a short and impromptu interview with Zach while enjoying lunch at the city hall canteen in St Brieuc, France.

Zach Lieberman and Du Zhenjun playing with Drawn
.

Can you give a short intro of OpenFrameworks for people who may not have heard of it?
Open Frameworks is a library of C++ based code which is designed for creative coding... so... It is a library but we think of it more as a kind of framework. So instead of being a library having a lot of code, it wraps other libraries. The idea of a library for people who maybe are non programmers, is that it's a set of code which has been pre-written, which gives you access to different functionality.

The idea of OpenFrameworks is in a way to create a kind of wrapper, which wraps other libraries and gives you the kinds of things you may want to experiment creatively. So for us we do a lot of audio-visual work, so that means kind of visuals, being able to load in images, being able to work with movies, being able to work with audio...

...you've made your own functions?
Yeah, yeah, sure.

I looked through and there is a whole bunch of stuff you've got there, which is just things that I think would be really obvious to use but maybe it is not so easy to do that...
Yeah, it's not so easy. The idea is to kind of give you a lot of functionality very quickly. We like this idea of 80%. If you have software or code which can do 80% of what you want to do it is a good thing. Cause then you can try and figure out the remaining 10-20%.

So it's kind of moving at a little bit higher level of abstraction?
Sure, but at the same time we want to give you, becuase we're super nerds, so we like to have this low level access. Like if your playing a movie, you want to know what pixel number 20 20 is, you want to know the red, green, and blue value. So we want to be able to give you access to that data if you want it. But if you just want to play the movie you play the movie. So that's the point is to give some layer of abstraction and also allow you to get in low level.

I think we talked about this the other day, but there is definitely a history of artist made software such as Rokeby's softVNS and Processing I guess more recently. So as an artist why do you want make something like OpenFrameworks?
One thing I was interested in, I always try to do this when I'm teaching, is to really preach this idea that artistic practice is research. That really art-making is research in the same way that, science, you know, a physicist is doing research. So I like this idea, when you think about research, research is really built on the work of other people. And that's important for students, to see like their artworks, that your artwork is coming on top of the work of other people. So I like this idea of artist as researcher, and maybe it is a kind of researcher for humanity or researcher for society or for the world.

And if you take that question of researcher even further, then the question is how do you publish the results of your research? And open source is one very obvious and very critical way to publish the results of your research. So then I started to think about open source, and especially about this idea of could you be making tools at the same time you are making art?

So OpenFrameworks is well, one thing I have found I am really good at is working with libraries and working with code, so I could use those skills, and the things that I learn and the projects that I make, in order to create something that other people would find useful.

So that's a part of it as well? Being able to see other people use the platform to go forward and create?
Sure, that's the thing that is very beautiful, is that you put it out there and then you see these amazing results.

Do you sort of feel like 'the godfather'?
Oh yeah, I was just in Barcelona and there was the Graffiti Research Lab there with the laser tag project and I really felt like that is so totally beautiful. They put the video on YouTube and like a million people have seen the video, and its like the project is so successful, cause it's totally brilliant, it's so simple. Then I look through the code, I was helping them and kind of programming a little bit and I realised that that's the value of open source, you can put something out there and somebody can make an amazing project with it. And I have an even stronger respect for people like Ben Fry and Casey Reas; it's so hard do this kind of open source project so I really respect what they have been doing and the whole entire Processing community.

I think artists are very aware of their work looking like it was made by a certain set of tools. How much do you think it is the responsibility of the artist to be able to look after how they make their own tools and take care of their tools themselves, whether that is software or something like Wiring...
I think it is important to understand the tradition. You know that's the first thing for artists, is to understand this idea of tradition and research and learning from previous generations. And then I think once you have been in it for a while, like been in the game and working then you can see what the patterns are and how to turn away from it.

For me I have been working with Golan for a long time, we do a lot of synthetic graphics, using a lot of openGL and drawing things in a certain way and the visuals are in a way very similar. And when I made the project Drawn which was about video, which was about augmenting live video, I wanted to find a way to break away. And I think it is important, always important for artists to try to understand their own career, their own trajectory and the trajectory of people around them, and try and find a way to break out, because we will be in these similar patterns. And that is the thing that is beautiful about research, is well we can keep going the same routes or we can discover new paths as well.

As this is a New Zealand blog, tell me again about this New Zealand connection?
With OpenFrameworks?
Yeah
Well there's you! I met you and the first thing was like 'I'm from New Zealand and I am on the OpenFrameworks mailing list'!. And I met Julian Oliver who is a really wonderful artist based in Berlin... he is also from New Zealand and I got him excited about OpenFrameworks, so I got two out of I dunno how many million...
Four million in New Zealand!
Two out of four million, so it's like one in five hundred thousand, no like one in two million... we're getting there...
Thank you very much!

3 comments:

Luke Munn said...

Wow, interesting stuff Karl. Nice to have something like the Laser tagging graffiti work to visualise the kind of cutting edge tech/art marriage that can result from an open source code library that's actively contributed to.

And as a bonus, you're the winner of the Bachelorette CD promised to a randomly chosen poster as part of my kick-start incentive scheme. :-) Chuck me your address offline and I'll send it in the next few days...

Owner said...

Yeah Processing we always had speed issue..
Hey Karl, by the way Christian who I worked on MTV project is also going to be in Built with Processing book. I will see him next week.
I am off to France next week, I will be in Berlin for 3 weeks.

Karl D.D. Willis said...

Window,
Yeah Laser Tagging is nuts isn't it. The whole attitude is amazing - take it to the streets.

Kentaro,
Processing is a super-quick prototyping tool. The default naming of the files to 'sketches' pretty much sums that up. I really think Processing and OpenFrameworks will complement each other. It is going to be interesting to see how many sketches become grown-up C++ projects.
Au revoir!