Category Archives: Conversations

Support de Fortune

[W]hat then, would become of it — this context — if transferred? — if translated? Would it not rather be traduit (traduced) which is the French synonyme, or overzezet (turned topsy-turvy) which is the Dutch one? 1

SdF-1aprilThis month, Kristien Van den Brande installed her research Support de Fortune in the vitrine of Recyclart, Brussels.

“How do supports of writing — a book or a single piece of paper, pencils, typewriters or internet pages — work on our thoughts? How do ‘chance supports’ (a train ticket, the back of an envelope, the margin of a book) challenge common ideas and practices of archiving, binding, displaying, reproducing, translation?”

With Jonathan Lahey Dronsfield, Nick Thurston we contributed artist talks and performative readings, adding to the rich collection of material (books, references, ideas) that Kristien had brought together. It was a welcome opportunity to revisit many familiar themes, an occasion for a re-take of A Romance of Many Dimensions and a first try-out of Technical Writing.

Tools for a Read-Write World I

While working on a call for projects in the context of LGRU (codename: Tools for a Read-Write World) I drift off into reading an interview with Ward Cunningham. Cunningham developed concepts and codes for collaborative tools such as the Wiki, and also inspired programming methods like Extreme Programming.

Bill Venners: Everyone would likely agree that predicting the future is difficult, but is it always a bad idea?

Ward Cunningham: (…) When we start talking about what will be desired in the future, we might have some instincts and they might be right, but they won’t always be right. And we have to attend to the times when they aren’t right. (…)

Somebody might say, “Why don’t we look forward, look at all the work we have to do? Why don’t we design a system that makes all work easy from the beginning?” And if you can pull that off, that’s great. It’s just that, over and over, people try to design systems that make tomorrow’s work easy. But when tomorrow comes it turns out they didn’t quite understand tomorrow’s work, and they actually made it harder.

Bill Venners: To tackle the cost of change curve, you found a way to make it practical to make changes all the way through the lifetime of a project. And that made it less important to plan for the future, because you could make changes when they were actually needed as the future unfolded. Does an overall architecture simply emerge through the process of focusing only on each small step?

Ward Cunningham: I like the notion of working the program, like an artist works a lump of clay. An artist wants to make a sculpture, but before she makes the sculpture, she just massages the clay. She starts towards making the sculpture, and sees what the clay wants to do. And the more she handles the clay, the more the clay tends to do what she wants. It becomes compliant to her will.
A development team works on a piece of code over several months. Initially, they make a piece of code, and it’s a little stiff. It’s small, but it’s still stiff. Then they move the code, and it gets a little easier to move.

Working the Program: A Conversation with Ward Cunningham, Part III. Bill Venners, 2004 http://www.artima.com/intv/clay.html

Meaningful transformations

A conversation with Tom Lechner

We discovered the work of Tom Lechner at the Libre Graphics Meeting 2010 in Brussels. Tom traveled from Portland, US to present Laidout, an amazing tool that he made to produce his own comic books and also to work on three dimensional mathematical objects. His software interests us for several reasons. We are excited about how it represents the gesture of folding, love his bold interface decisions plus are impressed by the fact that Tom has decided to write his own programming framework for it. A year later, we meet again in Montreal, Canada for the 2011 Libre Graphics Meeting where he presents a follow-up. With Ludivine Loiseau (amateur bookbinder and graphiste) and Pierre Marchand (artist/developer, contributing amongst others to podofoimpose and Scribus) we finally find time to sit down and talk.

Download: Tom_Lechner.odt

FS: What is Laidout?
TL: Well, Laidout is software that I wrote to lay out my cartoon books in an easy fashion. Nothing else fit my needs at the time, so I just wrote it.
FS: It does a lot more than laying out cartoons?
TL: It works for any image, basically, and gradients. It does not currently do text. It is on my to-do list. I usually write my own text, so it does not really need to do text. I just make an image of it.
FS: It can lay out T-shirts?
TL: But that’s all images too. I guess it’s two forms of laying out. It’s laying out pieces of paper that remain whole in themselves, or you can take an image and lay it out on smaller pieces of paper. Tiling, I guess you could call it.
FS: Can you talk us through the process of doing the T-shirt?
TL: OK. So, you need a pattern. I had just a shirt that sort of fit and I approximated it on a big piece of paper, to figure out what the pieces were shaped like, and took a photograph of that. I used a perspective tool to remove the distortion. I had placed rulers on the ground so that I could remember the actual scale of it. Then once it was in the computer, I traced over it in Inkscape, to get just the basic outline so that I could manipulate further. Blender didn’t want to import it so I had to retrace it. I had to use Blender to do it because that lets me shape the pattern, take it from flat into something that actually makes 3D shapes so whatever errors were in the original pattern that I had on the paper, I could now correct, make the sides actually meet and once I had the molded shape, and in Blender you have to be extremely careful to keep any shape, any manipulation that you do to make sure your surface is still unfoldable into something flat. It is very easy to get away from flat surfaces in Blender. Once I have the molded shape, I can export that into an .off file which my unwrapper can import and that I can then unwrap into the sleeves and the front and the back as well as project a panoramic image onto those pieces. Once I have that, it becomes a pattern laid out on a giant flat surface. Then I can use Laidout once again to tile pages across that. I can export into a pdf with all the individual pieces of the image that were just pieces of the larger image that I can print on transfer paper. It took forty iron-on transfer papers I ironed with an iron provided to me by the people sitting in front of me so that took a while but finally I got it all done, cut it all out, sewed it up and there you go.
FS: Could you say something about your interest in moving from 2D to 3D and back again? It seems everything you do is related to that?
TL: I don’t know. I’ve been making sculpture of various kinds for quite a long time. I’ve always drawn. Since I was about eighteen, I started making sculptures, mainly mathematical woodwork. I don’t quite have access to a full woodwork workshop anymore, so I cannot make as much woodwork as I used to. It’s kind of an instance of being defined by what tools you have available to you, like you were saying in your talk1. I don’t have a wood shop, but I can do other stuff. I can still make various shapes, but mainly out of paper. Since I had been doing woodwork, I picked up photography I guess and I made a ton of panoramic images. It’s kind of fun to figure out how to project these images out of the computer into something that you can physically create, for instance a T-shirt or a ball, or other paper shapes.
FS: Is there ever any work that stays in the computer, or does it always need to become physical?
TL: Usually, for me, it is important to make something that I can actually physically interact with. The computer I usually find quite limiting. You can do amazing things with computers, you can pan around an image, that in itself is pretty amazing but in the end I get more out of interacting with things physically than just in the computer.
FS: But with Laidout, you have moved folding into the computer! Do you enjoy that kind of reverse transformation?
TL: It is a challenge to do and I enjoy figuring out how to do that. In making computer tools, I always try to make something that I can not do nearly as quickly by hand. It’s just much easier to do in a computer. Or in the case of spherical images, it’s practically impossible to do it outside the computer. I could paint it with airbrushes and stuff like that but that in itself would take a hundred times longer than just pressing a couple of commands and having the computer do it all automatically.
PM: My feeling about your work is that the time you spent working on the program is in itself the most intriguing part of your work. There is of course a challenge and I can imagine that when you are doing it like the first time you see a rectangle, and you see it mimic a perspective you think wow I am folding a paper; I have really done something. I worked on imposition too but more to figure out how to work with pdf files and I didn’t go this way of the gesture like you did. There is something in your work which is really the way you wrote your own framework for example and did not use any existing frameworks. You didn’t use existing GUIs and toolboxes. It would be nice to listen to you about how you worked, how you worked on the programming.
TL: I think like a lot of artists, or creative people in general, you have to enjoy the little nuts and bolts of what you’re doing in order to produce any final work, that is if you actually do produce any final work. Part of that is making the tools. When I first started making computer tools to help me in my art work, I did not have a lot of experience programming computers. I had some. I did little projects here and there. So I looked around at the various toolkits, but everything seemed really rigid. If you wanted to edit some text, you had this little box and you write things in this little box and if you want to change numbers, you have to erase it and change tiny things with other tiny things. It’s just very restrictive. I figured I could either figure out how to adapt those to my own purposes, or I could just figure out my own, so I figured either way would probably take about that same amount of time I guessed, in my ignorance. In the process, that’s not quite been true. But it is much more flexible, in my opinion, what I’ve developed, compared to a lot of other toolkits. Other people have other goals, so I’m sure they would have a completely different opinion. For what I’m doing, it’s much more adaptable.
LL: You said you had no experience in programming? You studied in art school?
TL: I don’t think I ever actually took computer programming classes. I grew up with a Commodore 64, so I was always making letters fly around the screen and stuff like that, and follow various curves. So I was always doing little programming tricks. I guess I grew up in a household where that sort of thing was pretty normal. I had two brothers, and they both became computer programmers. And I’m the youngest, so I could learn from their mistakes, too. I hope.
PM: You’re looking for good excuses to program.
TL: (laughs) That could be.
PM: We can discuss at length about how actual toolkits don’t match your needs, but in the end, you want to input certain things. With any recent toolkit, you can do that. It’s not that difficult or time consuming. The way you do it, you really enjoy it, by itself. I can see it as a real creative work, to come up with new digital shapes.
FS: Do you think that for you, the program itself is part of the work?
TL: I think it’s definitely part of the work. That’s kind of the nuts and bolts that you have to enjoy to get somewhere else. But if I look back on it, I spend a huge amount of time just programming and not actually making the artwork itself. It’s more just making the tools and all the programming for the tools. I think there’s a lot of truth to that. When it comes time to actually make artwork, I do like to have the tool that’s just right for the job, that works just the way that seems efficient.
FS: I think the program itself is an artwork, very much. To me it is also a reflection on moving between 2D and 3D, about physical computation. Maybe this is the actual work. Would you agree?
TL: I don’t know. To an extent. In my mind, I kind of class it differently. I’ve certainly been drawing more than I’ve been doing technical stuff like programming. In my mind, the art work is things that get produced, or a performance or something like that. And the programming or the tools are in service to those things. That’s how I think of it. I can see that… I’ve distributed Laidout as something in itself. It’s not just some secret tool that I’ve put aside and presented only the art work. I do enjoy the tools themselves.
FS: I have a question about how the 2D imagines 3D. I’ve seen Pierre and Ludi write imposition plans. I really enjoy reading this, almost as a sort of poetry, about what it would be to be folded, to be bound like a book. Why is it so interesting for you, this tension between the two dimensions?
TL: I don’t know. Perhaps it’s just the transformation of materials from something more amorphous into something that’s more meaningful, somehow. Like in a book, you start out with wood pulp, and you can lay it out in pages and you have to do something to that in order to instil more meaning to it.
FS: Is binding in any way important to you?
TL: Somewhat. I’ve bound a few things by hand. Most of my cartoon books ended up being just stapled, like a stack of paper, staple in the middle and fold. Very simple. I’ve done some where you cut down the middle and lay the sides on top and they’re perfect bound. I’ve done just a couple where it’s an actual hand bound, hard cover. I do enjoy that. It’s quite a time consuming thing. There’s quite a lot of craft in that. I enjoy a lot of hand made, do-it-yourself activities.
FS: Do you look at classic imposition plans?
TL: I guess that’s kind of my goal. I did look up classic book binding techniques and how people do it and what sort of problems they encounter. I’m not sure if I’ve encompassed everything in that, certainly. But just the basics of folding and trimming, I’ve done my best to be able to do the same sort of techniques that have been done in the past, but only manually. The computer can remember things much more easily.
PM: Imposition plans are quite fixed, you have this paper size and it works with specific imposition plans. I like the way your tool is very organic, you can play with it. But in the end, something very classic comes out, an imposition plan you can use over and over, which gives a sort of continuity.
LL: What’s impressive is the attention you put into the visualization. There are some technical programs which do really big imposition stuff, but it’s always at the printer. Here, you can see the shape being peeled. It’s really impressive. I agree with Femke that the program is an art work too, because it’s not only technical, it’s much more.
FS: How is the material imagined in the tool?
TL: So, far not really completely. When you fold, you introduce slight twists and things like that. And that depends on the stiffness of the paper and the thickness of the paper and I’ve not adequately dealt with that so much. If you just have one fold, it’s pretty easy to figure out what the creep is for that. You can do tests and you can actually measure it. That’s pretty easy to compensate for. But if you have many more folds than that, it becomes much more difficult.
FS: Are you thinking about how to do that?
TL: I am.
FS: That would be very interesting. To imagine paper in digital space, to give an idea of what might come out in the end. Then you really have to work your metaphors, I think?
TL: A long time ago, I did a lot of t-shirt printing. Something that I did not particularly have was a way to visualize your final image on some kind of shirt and the same thing applies for book binding, too. You might have a strange texture. It would be nice to be able to visualize that beforehand, as well as the thickness of the paper that actually controls physical characteristics. These are things I would like to incorporate somehow but haven’t gotten around to.
FS: You talked about working with physical input, having touchpads… Can you talk a bit more about why you’re interested in this?
TL: You can do a lot of things with just a mouse and a keyboard. But it’s still very limiting. You have to be sitting there, and you have to just control those two things. Here’s your whole body, with which you can do amazing things, but you’re restricted to just moving and clicking and you only have a single point up on the screen that you have to direct very specifically. It just seems very limiting. It’s largely an unexplored field, just to accept a wider variety of inputs to control things. A lot of the multitouch stuff that’s been done is just gestures for little tiny phones. It’s mainly for browsing, not necessarily for actual work. That’s something I would like to explore quite a lot more. FS: Do you have any fantasies about how these gestures could work for real?
TL: There’s tons of sci fi movies, like //Minority Report//, where you wear these gloves and you can do various things. Even that is still just mainly browsing. I saw one, it was a research project by this guy at Caltech. He had made this table and he wore polarized glasses so he could look down at this table and see a 3D image. And then he had gloves on, and he could sculpt things right in the air. The computer would keep track of where his hand is going. Instead of sculpting clay, you’re sculpting this 3D mesh. That seemed quite impressive to me.
FS: You’re thinking about 3D printers, actually?
TL: It’s something that’s on my mind. I just got something called the Eggbot. You can hold spheres in this thing and it’s basically a plotter that can print on spherical surfaces or round surfaces. That’s something I’d like to explore some more. I’ve made various balls with just my photographic panoramas glued onto them. But that could be used to trace an outline for something and then you could go in with pens or paints and add more detail. If you’re trying to paint on a sphere, just paint and no photograph, laying out an outline is perhaps the hardest part. If you simplify it, it becomes much easier to make actual images on spheres. That would be fun to explore.
PM: I’d like to come back to the folding. Following your existing aesthetic, the stiffness and the angles of the drawing are very beautiful. Is it important you, preserving the aesthetic of your programs, the widgets, the lines, the arrows…
TL: I think the specific widgets, in the end, are not really important to me at all. It’s more just producing an actual effect. So if there is some better way, more efficient way, more adaptable way to produce some effect, then it’s better to just completely abandon what doesn’t work and make something that’s new, that actually does work. Especially with multitouch stuff, a lot of old widgets make no more sense. You have to deal with a lot of other kinds of things, so you need different controls.
PM: It makes sense, but I was thinking about the visual effect. Maybe it’s not Laidout if it’s done in Qt.
FS: Your visuals and drawings are very aesthetically precise. We’re wondering about the aesthetics of the program, if it’s something that might change in the future.
TL: You mean would the quality of the work produced be changed by the tools?
FS: That’s an interesting question as well. But particularly the interface, it’s very related to your drawings. There’s a distinct quality. I was wondering how you feel about that, how the interaction with the program relates to the drawings themselves.
TL: I think it just comes back to being very visually oriented. If you have to enter a lot of values in a bunch of slots in a table, that’s not really a visual way to do it. Especially in my art work, it’s totally visual. There’s no other component to it. You draw things on the page and it shows up immediately. It’s just very visual. Or if you make a sculpture, you start with this chunk of stuff and you have to transform it in some way and chop off this or sand that. It’s still all very visual. When you sit down at a computer, computers are very powerful, but what I want to do is still very visually oriented. The question then becomes: how do you make an interface that retains the visual inputs, but that is restricted to the types of inputs computers need to have to talk to them?
PM: The way someone sets up his workshop says a lot about his work. The way you made Laidout and how you set up its screen, it’s important to define a spot in the space of the possible.
LL: What is nice is that you made the visualisation so important. The windows and the rest of the interface is really simple, the attention is really focused on what’s happening. It is not like shiny windows with shadows everywhere, you feel like you are not bothered by the machine.
PM: At the same time, the way you draw the thickness of the line to define the page is a bit large. For me, these are choices, and I am very impressed because I never manage to make choices for my own programs. The programs you wrote, or George Williams, make a strong aesthetic assertion like: This is good. I can do this. I think that is really interesting.
TL: Heavy page borders, that still comes down to the visual thing you end up with, is still the piece of paper so it is very important to find out where that page outline actually is. The more obvious it is, the better.
PM: Yes, I think it makes sense. For a while now, I paid more attention than others in Scribus to these details like the shape of the button, the thickness of the lines, what pattern do you chose for the selection, etcetera. I had a lot of feedback from users like: I want this, this is too big and at some point you want to please everybody and you don’t make choices. I don’t think that you are so busy with what others think.
FS: Are there many other users of the program?
TL: Not that I know of (laughter). I know that there is at least one other person that actually used it to produce a booklet. So I know that it is possible for someone other than myself to make things with it. I’ve gotten a couple of patches from people to not make it crash at various places but since Laidout is quite small, I can just not pay any attention to criticism. Partially because there isn’t any, and I have particular motivations to make it work in a certain way and so it is easier to just go forward.
PM: I think people that want to use your program are probably happy with this kind of visualisation. Because you wrote it alone, there is also a consistency across the program. It is not like Scribus, that has parts written by a lot of people so you can really recognize: this is Craig (Bradney), this is Andreas (Vox), this is Jean (Ghali), this myself. There is nothing to follow.
TL: I remember Donald Knuth talking about TeX and he was saying that the entire program was written from scratch three times before its current incarnation. I am sympathetic to that style of programming.
FS: Start again.
PM: I think it is a good idea, to start again. To come back to a little detail. Is there a fileformat for your imposition tool, to store the imposition plan? Is it a text or a binary format?
TL: It is text-based, an indented file format, sort of like Python. I did not want to use XML, every time I try to use XML there are all these greater than’s and less than’s. It is better than binary, but it is still a huge mess. When everything is indented like a tree, it is very easy to find things. The only problem is to always input tabs, not spaces. I have two different imposition types, basically, the flat-folding sheets and the three dimensional ones. The three dimensional one is a little more complicated.
FS: If you read the file, do you know what you are folding?
TL: Not exactly. It lists what folds exists. If you have a five by five grid, it will say “Fold along this line, over in such and such direction”. What it actually translates to in the end, is not currently stored in the file. Once you are in Laidout you can export into a podofoimpose plan file.
PM: Is this file just values, or are there keywords, is it like a text?
TL: I try to make it pretty readable, like “trimright” or “trimleft”.
FS: Does it talk about turning pages? This I find beautiful in podofoimpose plans, you can almost follow the paper through the hands of the program. Turn now, flip backwards, turn again. It is an instruction for a dance.
TL: Pretty much.
PM: The text you can read in the podofoimpose plans was taken from what Ludi and me did by hand. One of us was folding the paper, and the other was writing it into the plan. I think a lot of the things we talk about, are putting things from the real world into the computer. But you are putting things from the computer into the real world.
FS: Can you describe again these two types of imposition, the first one being very familiar to us. It must be the most frequently asked question on the Scribus mailinglist: “How to do imposition”. Even the most popular search term on the OSP website is “Bookletprinting”. But what is the difference with the plan for a 3D object? A classic imposition plan is also somehow about turning a flat surface into a three dimensional object?
TL: It is almost translatable. I’m reworking the 3D version to be able to incorporate the flat folding. It is not quite there yet, the problem is the connection between the pages. Currently, in the 3D version, you have a shape that has a definitive form and that controls how things bleed across the edges. When you have a piece of paper for a normal imposition, the pages that are next to each other in the physical form are not necessarily related to each other at all in the actual piece of paper. Right now, the piece of paper you use for the 3D model is very defined, there is no flexibility. Give me a few months!
FS: So it is very different actually.
TL: It is a different approach. One person wanted to do flexagons, it is sort of like origami I guess, but it is not quite as complicated. You take a piece of paper, cut out a square and another square, and than you can fold it and you end up with a square that is actually made up of four different sections. Than you can take the middle section, and you get another page and you can keep folding in strange ways and you get different pages. Now the question becomes: how do you define that page, that is a collection of four different chunks of paper? I’m working on that!
FS: We talk about the move from 2D to 3D as if these pages are empty. But you actually project images on them and I keep thinking about maps, transitional objects where physical space is projected on paper which then becomes a second real space and so on. Are you at all interested in maps?
TL: A little bit. I don’t really want to because it is such a well-explored field already. Already for many hundreds of years the problem is how do you represent a globe onto a more or less two dimensional surface. You have to figure out a way to make globe gores or other ways to project it and than glue it on to a ball for example. There is a lot of work done with that particular sort of imagery, but I don’t know.
PM: Too many people in the field!
TL: Yes. One thing that might be interesting to do though is when you have a ball that is a projection surface, then you can do more things, like overlays onto a map. If you want to simulate earthquakes for example. That would be entertaining.
FS: And the panoramic images you make, do you use special equipment for this?
TL: For the first couple that I made, I made this 30-sided polyhedron that you could mount a camera inside and it sat on a base in a particular way so you could get thirty chunks of images from a really cheap point and shoot camera. You do all that, and you have your thirty images and it is extremely laborious to take all these thirty images and line them up. That is why I made the 3D portion of Laidout, it was to help me do that in an easier fashion. Since then I’ve got a fish-eyed lens which simplifies things quite considerably. Instead of spending ten hours on something, I can do it in ten minutes. I can take 6 shots, and one shot up, one shot down. In Hugin you can stitch them all together.
FS: And the kinds of things you photograph? We saw the largest rodent on earth? How do you pick a spot for your images?
TL: I am not really sure. I wonder around and than photograph whatever stands out. I guess some unusual configuration of architecture frequently or sometimes a really odd event, or a political protest sometimes. The trick with panoramas is to find an area where something is happening all over the globe. Normally, on sunny days, you take a picture and all your image is blank. As pretty as the blue sky is, there is not a lot going on there particularly.
FS: Panoramic images are usually spherical or circular. Do you take certain images with a specific projection surface in mind?
TL: To an extent. I take enough images. Once I have a whole bunch of images, the task is to select a particular image that goes with a particular shape. Like cubes there are few lines and it is convenient to line them up to an actual rectangular space like a room. The tetrahedron made out of cones, I made one of Mount St. Helens, because I thought it was an interesting way to put the two cones together.
You mentioned three-D printers earlier, and one thing I would like to do is to extend the panoramic image to be more like a progression. For most panoramic images, the focal point is a single point in space. But when you walk along a trail, you might have a series of photographs all along. I think it could be an interesting work to produce, some kind of ellipsoidal shape with a panoramic image that flows along the trail.
FS: Back to Laidout, and keeping with the physical and the digital. Would there be something like a digital papercut?
TL: Not really. Maybe you can have an Arduino and a knife?
FS: I was more imagining a well placed crash?
TL: In a sense there is. In the imposition view, right now I just have a green bar to tell where the binding is. However when you do a lot of folds, you usually want to do a staple. But if you are stapling and there is not an actual fold there, than you are screwed.

—————————–

Recorded at the Libre Graphics Meeting in Montreal, May 2011

FS: Femke Snelting
TL: Tom Lechner
PM: Pierre Marchand
LL: Ludivine Loiseau

Transcription: ginger coons, Femke Snelting

What you can learn from digging a hole

In an intense discussion about ‘the interface of the future’, John Lilly (then CEO Mozilla Corporation, now working for another company); Aza Raskin (then Head of User Experience at Mozilla Labs, now running his own company) and Dan Mills (then Lead Developer of Weave, now leading the Account Manager project at Mozilla Labs) debate what happens between intent and result. If the interface goes away, how do you learn what to look for?

http://www.youtube.com/watch?v=4gygQ2GgN10

00:01,671 --> 02:15,276
AR: Let’s jump a little bit forward because I think when you know where we are going, it is easier to figure out how we chart our course there. So really simple example, starting with the shovel. A shovel has two bits. It has the thing that does the work, that is the blade. And it has the interface or the handle.
What we often see is that most projects is that people work on that blade, making it titanium, making it diamant encrusted. Spending all their time making an incredible backend technology but forgetting about the handle so you and up with a beautiful blade with a tiny short handle and you can’t really use it.
Let’s go a step further. What would the ultimate interface be, for a shovel. The very best one.
Some people might say you want an automatic digging machine, where you might get to ride it like a tractor trailor, other people might call that bloatware.
But what is the ultimate expression of a shovel? It’s a hole, it is having a hole already dug.
Instead of needing the tool, you would just have the result. So I think if we go way way into the future, the place we cannot get now, when we think of interfaces, what you really want, is just the result already done.
I think that is mighty spaceship thinking, what we can pull from that is the closer we get from no interface, the closer we get to not having to think about the interface between us and the machine and us and the artifact to having just the result that we want, the better.
For instance instead of going to our browser and typing in a search query, to get a search result, we should just be able to think or say and interact … “I wonder whether the [?] won this season?” or “Won the last season”, and you get the answer immediately.
To most people, that is not going to feel like an interface. And that is the sort of interface we want. Because as soon as you need to stop and realise and think about an interface, you’ve already lost.

02:15,276 --> 03:09,056
JL: I think that in digging the hole, you learn much about what you are trying to do. I think you are presupposing an intentionality that is not always there.
So I think when you look for knowledge, when you construct knowledge, when you construct a future space station, you don’t always know the goal from the outset, where you are trying to get.
The process of getting there often creates new knowledge. So I argue at c-base the point is not actually (I’ve known you for thirty minutes, so I don’ know if this is actually right) but the point is not to get to the space station, but it is all the things and all the aha’s and all the insights you have along the way.
And you can only get those insights, by struggling. By working through it. So I think that if you presuppose that you understand what you want always and that you are very intentional about everything you that you do, and that you understand precisely the results that you want, than I agree with you. But I think that human beings most of the times are not like that.

03:18,484 --> 03:25,633
AR: So if I understand what you are saying, than you are saying that imperfect tools are better?

03:25,633 --> 03:48,717
JL: No that is not what I said. I said, that you construct knowledge, through the use of tools. You are articulating one type of interface that is getting to the result without use of tools. And I am saying you miss a type of knowledge creation by thinking that way.

03:48,717 --> 04:03,437
AR: Rather what I think I am saying that if your goal is to dig a trench to add a landline, some place, that there are a whole bunch of problems there that go way beyond the physical act of digging of the hole.

04:03,437 --> 04:12,262
JL: I agree with you. If you know exactly the result you are trying to get to, and you don’t believe that you need to create knowledge along the way, than you are good with no interface.

04:12,262 --> 04:21,456
AR: Really what I am saying that any time you spend fiddling with your tool, instead of doing the job or the task that you set out to do, is wasted time that we should be trying to minimize.

04:21,456 --> 04:23,593
JL: And I think that is an over-broad generalization.

04:23,593 --> 04:26,797
DM: What if you don’t know what the task you are setting to do is?

04:26,797 --> 04:34,877
JL: Or what if what you think you know what you are doing but you are wrong? I think that in many cases you are correct, but I think it is an over-broad statement though.

04:34,877 --> 04:40,728
AR: Well, in that case you are going to use a tool that isn’t particularly apropos; discover that it is wrong and make a new tool.

04:40,728 --> 04:46,254
DM: But in your case, there is no tool. There is only intent and result.

04:46,254 --> 04:56,425
JL: That is right. Intent and result. And there is a process between intent and result. And sometimes the process changes both intent and result.

04:56,425 --> 05:05,295
AR: I think I’d argue rather that if your intent is wrong the result will be wrong, and that is the iterative loop you want.

05:05,482 --> 05:19,507
JL: I don’t think that is obvious either. I don’t think the result is wrong if the intent is wrong either. you often think you are headed in one direction, and you end up in a different place entirely. It is an ok result.

05:19,507 --> 05:25,358
AR: I won’t disagree with you there, I just think it is not our tools that should be…

05:25,358 --> 06:24,057
JL: I can be specific. I think right now on the web, we are heading to this non-serendipitous web. What people really want, they want the news they want, just the news. They just want what they are interested in, what their filter is, what their lens is.
But I will tell you that it misses serendipity. When you read through a paper, that you did not expect, but that you wanted to learn and needed to learn. When you walk through Berlin, you notice up a whole bunch of things that you did not think you needed to know, but now you do.
I think that serendipity and the process of knowledge construction… I think that we are talking about different types of activities, but I think that … I’ll tell you that I have learned a lot about myself when I’ve been digging in my yard with a shovel.
It is not that I say we should look for imperfect tools, but I think that connecting intent and result too tightly will not always be the right thing.

This discussion took place in C-base, Berlin in October 2008

Tying the story to data

In the summer of 2010, Constant commissioned artist and researcher Evan Roth to develop a work of his choice, and to make the development process available in some way. He decided to use a part of his fee as prize-money for The GML-Recorder Challenge, inviting makers to propose an open source device ‘that can unobtrusively record graffiti motion data during a graffiti writer’s normal practice in the city’.

In three interviews that took place in Brussels and Paris within a period of one and a half years, we spoke about the collaborative powers of the GML-standard, about contact points between hacker and graffiti-cultures and the granularity of gesture.

The text is based on conversations between Evan Roth (ER) and Femke Snelting (FS), Peter Westenberg (PW), Michele Walther (MW), Stéphanie Villayphiou (SV), John Haltiwanger (JH) and momo3010.

Download PDF: Tying the story to data

Space filling algorithms

AM: Pre-designed software, be it commercial or open source, pre-supposes how users intend to interact with it, what they want to do, and how they ought to do it, what the pipeline and the process ought to be.
M: Whenever I need a new functionality, I immediately try to design a simple re-usable API for it. I absolutely HATE copy / pasting code between projects, or even within a single project.
DP: It’s a practice. Space filling algorithms. Patterns of growth. At any given point in time, I have to choose a constraint to embrace, the boundaries of the page are an easy starting point.
AM: I have a lot of things I am no where near finished exploring with aesthetically, but also have a myriad of unfinished, generally useful tools for end users.
M: If I need to do the same or similar stuff in different places, I’ll try and make sure my code is parametric enough to accommodate for it, and the API allows it.
ZL: I remember thinking something simple like, “Better tools = better starting point = better work”. That was the motto.
AM: My private policy is: when I get bored and tired of a specific effect (that I’ve found has a sort of “signature”) it’s a candidate for release.
ZL: There are just so many pieces to know about and how they fit together, it seems to me an inherently collaborative medium and one which we should actively work to demystify and to lower the barrier to entry. Good tools do that.

– – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – –

May 2011, Kyle Mconald interviewed colleagues and friends Zach Lieberman, Anton Marini, Memo and Dan Paluska about “open source, media art, and digital communities”. The Sharing Interviews were conducted using Etherpad and published on GitHub.

Just ask and that will be that

A conversation with Asheesh Laroia

Our conversation took place at the last day of the Libre Graphics Meeting 2011 in Montreal, a day after the panel ‘How to keep and make productive libre graphics projects?‘. Asheesh had responded rather sharply to someone in the audience who remarked that only a very small number of women was present at LGM: “Bringing the problem back to gender is avoiding the general problem that F/LOSS has with social inclusion“. This statement asked for an explanation.
Another good reason to talk to him are the intriguing ‘Interactive training missions’ that he has been developing as part of the OpenHatch.org project. I wanted to know more about the tutorials he develops; why he decided to work on ‘story manuals’ that explain how to report a bug or how to work with version control.

Asheesh Laroia is someone who realizes that most of the work that makes projects successful is hidden underneath the surface. He volunteered his technical skills for the UN in Uganda, the EFF, and Students for Free Culture, and is a Developer in Debian. Today, he lives in Somerville, MA, working on OpenHatch.org. He speaks about his ideas to audiences at international F/LOSS conferences.

Also available at http://www.ospublish.constantvzw.org.

Bending culture

Asheesh Laroia (AL): The Interactive training missions are really linked to the background of the Open Hatch project itself. I started working on it because to my mind, one of the biggest reasons that people do not participate in free software projects, is that they either don’t know how or don’t feel included.
There is a lot you have to know to be a meaningful contributor to free software and I think that one of the major obstacle for getting that knowledge, and I am being a bit sloppy with the use of the term maybe, is how to understand a conversation on a bug-tracker for example. This is not something you run into in college, learning computer science or any other discipline. In fact, it is an almost anti-academic type of knowledge. Bug tracker conversations are ‘just people talking’, a combination of a comment thread on a blog and actual planning documents. There’s also tools like version control, where close to no one learns about in college. There is something like the culture of participating in mailing-lists and chatting on IRC… what people will expect to hear and what people are expecting from you.

For people like me that have been doing all these things for years, it feels very natural and it is very easy to forget all the advantages I have in this regard. But a lot of the ways people get to the point where I am now involves having friends that help out, like “Hey, I asked what I thought was a reasonable question on this mailing list and I did not get any answer or what they said wasn’t very helpful“. At this stage, if you are lucky, you have a friend that helps you stay in the community. If you don’t, you fall away and think “I’m not going to deal with this, I don’t understand“.
So, the training missions are designed to give you the cultural experience and the tool familiarity
in an automated way. You can stay in the community even when you don’t have a friend, because the robot will explain you what is going on.

Femke Snelting (FS): So how do you ‘harvest’ this cultural information? And how do you bring it into your tool?

AL: There is some creative process in what I call ‘writing the plot’; this is very linear. Each training mission is usually between three and fifteen minutes long so it is OK to have them be linear. In writing the plot, you just imagine what would it take a new contributor to understand not only what to do, but also what a ‘normal community member’ would know to do. The different training missions get this right to different extents.

FS: How does this type of knowledge form, you think? Did you need to become a kind of anthropologist of free software? How do you know you teach the right thing?

AL: I spend a lot of time both working with and thinking about new contributions to free software. Last September I organized a workshop to teach computer science students how to get involved in Open Source. And I have also been teaching inter-personally, in small groups, for ten or eleven years. So I use the workshops to test the missions and than I simply ask what works. But it is tough to evaluate the training missions through workshops because the workshops are intended to be more interpersonal. I definitely had positive feedback, but we need more, especially from people that have been two or three years involved in the free software community, because they understand what it feels like to be part of a community but they may still feel somewhat unsure about whether they have everything and still remember what was confusing to learn.

FS: I wasn’t actually asking about how successful the missions are in teaching the culture free software … I wanted to know how the missions learn from this culture?

AL: So far the plots are really written by me, in collaboration with others. We had one more recent contribution on git written by someone called Mark Freeman who is involved in the OpenHatch project. It did not have so much community discussion but it was also pretty good from the start. So I basically try to dump what is in my head?

FS: I am asking you about this, thinking about a session we once organized at Samedies, a woman-and-free-software group from Brussels. We had invited someone to come talk to us about using IRC on the command-line and she was discussing etiquette. She said: “On IRC you should never ask permission before asking a question“. This was the kind of cultural knowledge she was teaching us and I was a bit puzzled … you could also say that this lack of social interfacing on IRC is a problem. So why replicate that?

AL: In Debian we have a big effort to check the quality of packages and maintaining that quality, even if the developer goes away. It is called the ‘Debian QA project’ and there’s an IRC channel linked to that called #debian-qa. Some of the people on that channel like to say hello to each other and pay attention when other people are speaking, and others said “stop with all the noise“. So finally, the people that liked saying hello moved to another channel: #debian-sayhi.

FS: Meaning the community has made explicit how it wants to be spoken to?

AL: The point I am trying to make here, is that I am agreeing to part of what you are saying, that these norms are actually flexible. But what I am further saying, is that these norms are actually being bent.

Things that could be reasonable

FS: I would like to talk about the new mission on bug reporting you said you were working on, and how that is going. I find bug reports interesting because if they’re good, they mix observation and narration, which asks a lot from the imagination of both the writer and the reader of the report; they need to think themselves in each others place: What did I expect that would happen? What should have happened? What could have gone wrong? Would you say your interactive training missions are a continuation of this collective imaginary work?

AL: A big part of that sort of imagination is understanding the kinds of things that could be reasonable. So this is where cultural knowledge comes in. If you program in C or even if you just read about C, you understand that there is something called ‘pointers’ and something called ‘segfaults’ and if your program ends in that way, that is not a good thing and you should report a bug. This requires an imagination on the side of the person filing the bug.
The training missions give people practice in seeing these sorts of things and understand how they could work. To build a mental model, even if it is fuzzy, that has enough of the right components so they can enter in discussion and imagine what happened.

Mixed feelings

AL: I have mixed feelings about using ‘gender’ as an important characteristic when considering how to grow our communities. It is not a bad idea maybe, and I am working on projects that are related to this as well, but I think it permits a misunderstanding of the problem and puts things in an awkward space, especially when the issue is addressed in a room primarily filled by men and only a few woman. Is what the men say sort of judge-able by the few women in the room? Are they speaking to the women that are not in the room? It becomes all very tenuous and confusing what you can or should say or do. We can skip this by understanding the real issue, which is community inclusiveness.

Of course when there are real issues such as groping at conferences, or making people feel unwelcome because they are shown slides of half-naked people that look like them … that is actually a gender issue and that needs to be addressed. But the example I gave was: “Where are the Indians, where are the Asians in our community?” This is still a confusing question, but not awkward.

FS: Why is it not awkward?

AL: (laughs) As I am an Indian person … you might not be able to tell from the transcription?

It is an easy thing to do, to make generalizations of categories of people based on visible characteristics. Even worse, is to make generalizations about all individual people in that class. It is really easy for people in the free software community to subconsciously think there are no women in the room “because women don’t like to program“, while we know that is really not true. I like to bring up the Indian people as an example because there are obviously a bunch of programmers in India … the impression that they can’t program, can’t be the reason they are excluded.

FS: But in a way that is even more awkward?

AL: Well, maybe I don’t feel it is that awkward because I see how to fix it, and I even see how to fix both problems at the same time.

AL: In free software we are not hungry for people in the same way that corporate hiring departments are. We limp along and sometimes one or two or three people join our project per year as if by magic and we don’t know how and we don’t try to understand how. Sometimes external entities such as Google Summer of Code cause many many more show up at the doorstep of our projects, but because they are so many they don’t get any skills for how to grow.
When I co-ran this workshop at the computer science department at the University of Pennsylvania on how to get involved in open source, we were flooded with applicants. They were basically all feeling enthusiastically about open source but confused about how to get involved. 35% of the attendees were women, and if you look at the photos you’ll see that it wasn’t just women we were diverse on, there were lots of types of people.
That’s a kind of diversity-neutral outreach we need. It is a self-empowerment outreach: ‘you will be cooler after this, we teach you how to do stuff’ and not ‘we need you to do what we want you to do’, which is the hiring-kind of outreach.

FS: And why do you think free software doesn’t usually reach out in this way? Why does the F/LOSS community have such a hard time becoming more diverse?

AL: The F/LOSS community has problems getting more people AND being more diverse. To me, those are the same problems. If we would hand out flyers to people with a clear message saying for example: here is this nice vector drawings program called Inkscape. Try it out and if you want to make it even better, come to this session and we’ll show you how. If you send out this invitation to lots of people, you’ll reach more of them and you’ll reach more diverse people. But the way we do things right now, is that we leave notes on bug trackers saying: “help wanted”. The people that read bug trackers, also know how to read mailing lists. To get to that point, they most likely had help from their friends. Their friends probably looked like them, and there you have a second or third degree diversity reinforcement problem.
But leaving gender diversity and race diversity aside, it is such a small number of people!

The How-To-Contribute page

FS: So, to break that cycle you say there is a need to externalize knowledge … like you are doing with the Open Hatch project and with your project Debian for Shy People? To not only explain how things technically work, but also how they function socially?

AL: I don’t know about externalizing … I think I just want to grow our community. But when I feel more radical, I’d say we should just not write ‘How to contribute’ pages anymore. Put a giant banner there instead saying: “This is such a fun project, come hang out with us on IRC… every Sunday at 3PM”. Five or ten people might show up, and you will be able to have an individual conversation. Quickly you’ll cross a boundary … where you are no longer externalizing knowledge, but simply treat them as part of your group.

The Fedora Design Bounties are a big shining example for me. Maírín Duffy has been writing blog posts about three times a year: “We want you to join our community and here is something specific we want you to do. If you get it right, the prize is that you are part of our community.” The person that you get this way will stick around because he or she came to join the community.

FS: And not because you sent a chocolate cake?

AL: Not for the chocolate cake, and also not for the 5000$ that you get over the course of a Google summer of code project. So, I question whether it is worth spending any time on a wiki-page explaining “How to- contribute” when instead you could attract people one by one, with a 100% success-rate.

FS: Writing a “How to contribute” page does force teams to reflect on what it takes to become part of their community?

AL: Of course that is true. But compared to standing at a job-fair talking to people about their resume, “how to contribute” pages are like anonymous, impersonal walls of text that are not meant to create communication necessarily. If we keep focusing on communicating at this scale, we miss out on the opportunity to make the situation better for individual people that are likely to help us.

Patience is valuable

FS: I feel that the free software community is quite busy with efficiency. When you emphasize the importance of individual dialogue, it sounds like you propose a different angle, even when this in the end has the desired effect of attracting more loyal and reliable contributors.

AL: It is amazing how valuable patience is.

FS: You talked about Paul, the guy that stuck around on the IRC channel saying hi to people and than only later started contributing patches after having seen two or three people going through the process. You said: “If we had implied that this person would only be welcome when he was useful … we would have lost someone that would be useful in the future“.

AL: The obsession with usefulness is a kind of elitism. The Debian project leader once made this sort of half-joke where he said: “Debian developers expect new Debian contributors to appear as fully formed, completely capable Debian developers“. That is the same kind of elitism that speaks from “You can’t be here until you are useful“. By the way, the fact that this guy was some kind of cheerleader was awesome. The number of patches we got because he was standing there being friendly, was meaningful to other contributors, I am sure of it. The truth is … he was always useful, even before he started submitting patches. Borrowing the word ‘useful’ from the most extreme code-only definition, in the end he was even useful by that definition. He had always been useful.

FS: So it is an obsession with a certain kind of usefulness?

AL: Yes.

FS: It is nice to hear you bring up the value of patience. OSP uses the image of a frog as their logo, a reference to the frog from the fairy tale ‘The frog and the princess’. Engaging with free software is a bit like kissing a frog; you never know whether it will turn into a prince before you have dared to love it! To OSP it is important not to expect that things will go the way you are used to … A suspension of disbelief?

A: Or hopefulness! I had a couple of magic moments … one of the biggest magic moments for me was when I as a high school student e-mailed the Linux kernel list and than I got a response! My file system was broken, and fsck-tools were crashing. So I was at the end of what I could do and I thought: let’s ask these amazing people. I ended up in a discussion with a maintainer who told me to submit this bug-report, and use these dump tools … I did all these things and compiled the latest version from version control because we just submitted a patch to it. By the end of the process I had a working file system again. From that moment on I thought: these magic moments will definitely happen again.

Just ask and that will be that

FS: If you want magic moments, than streamlining the communication with your community might not be your best approach?

A: What do you mean by that?

FS: I was happy to find a panel on the program of LGM that addressed how this community could grow. But than I felt a bit frustrated by the way people were talking about it. I think the user- and developer communities around Libre Graphics are relatively small, and all people actually ask for, is dialogue. There seems to be lots of concern about how to connect, and what tools to use for that. The discussion easily drifts into self-deprecating statements such as: “our website is not up-to-date” or “we should have a better logo” or “if only our documentation would be better“. But all of this seems more about putting off or even avoiding the conversation.

AL: Yes, in a way it is. I think that ‘conversations’ are the best, biggest thing that F/LOSS has to offer its users, in comparison with proprietary software. But a lot of the behavioral habits we have within F/LOSS and also as people living in North America, is derived from what we see corporations doing. We accept this as our personal strategies because we do not know any alternatives. The more I say about this, the more I sound like a hippie but I think I’ll have to take the risk (laughs).

If you go to the Flash website, it tells you the important things you need to know about Flash, and than you click download. Maybe there is a link to a complex survey that tries to gather data en masse of untold millions of users. I think that any randomly chosen website of a Libre Graphics project will look similar. But instead it could say when you click download or run the software … “we’re a bunch of people … why don’t you come talk to us on IRC?

There are a lot people that are not in the conversation because nobody ever invited them. This is why I think about diversity in terms of outreach, not in terms of criticizing existing figures. If in some alternate reality we would want to build a F/LOSS community that exists out of 90% women and 10% men, I bet we could do it. You just start with finding a college student at a school that has a good Computer Science program … she develops a program with a bunch of her friends … she puts up flyers in other colleges … You could do this because there are relatively so little programmers in the world busy with developing F/LOSS that you can almost handpick the diversity content of your community. Between one and a thousand … you could do that. There are 6 million thousand people on this planet and the amount of people NOT doing F/LOSS is enormous. Don’t wring your hands about “where are the women“. Just ask them to join and that will be that!