Algorithmic Thinking for Beginners
Design Observer / 05.02.2014
Frieder Nake is a pioneer of generative design. Fifty years ago he was tinkering with electronic devices to produce digital patterns in rapid sequencing. He had studied mathematics at the university of Stuttgart and was investigating the computable aspects of aesthetics and their relationship to semiotics. Today, Friday April 18th, 2014, half a century later, Nake, now 75, a spry figure in sneakers, is standing in a classroom in the small town of Amiens, France. The local design school, the esad, has invited him to give a workshop on algorithmic thinking. I have no programming experience but I have managed to get my name on the list. The director of the school, Barbara Dennys, is my next-door neighbor.
I don’t want to die stupid.
“We never understand anything, which is great,” says Nake, as an introduction to his class. However, for this German computer scientist, the fact that we never understand anything is not an excuse for being intellectually slothful. He quotes Wittgenstein. “What we cannot talk about, we must consign to silence, but what can be said must be said clearly.”
Algorithmic thinking: the ability to state precisely what you only know intuitively.
The entire class is conducted in English even though no one in the room (myself included) is a native English speaker. But today English is to Europe what Latin was to the Mediterranean basin in the Middle Ages — a lingua franca. In the majority of the cases, though, fluency is limited to reading and listening. In France, at the end of a conference delivered in English, no questions are ever asked. The auditorium will most likely be packed, but the silence following the presentation is deafening. Any questions? The only noise in the room is the suddenly audible tinnitus in your ears.
Like strings of codes, English words are not conjuring up images in the mind of French listeners. Making sense of what is being said doesn’t involve visualization. Far from being a handicap, this is an asset. In fact, English gives my compatriots access to a part of their brain that’s practically picture-free. The graphics window is not activated, so to speak. Frieder Nake will take advantage of this loophole: he will demonstrate how, in algorithmic thinking, the visible world is not the ultimate reference, but merely the by-product of a step-by-step construction generated in the brain.
In other words, we are here to learn to turn codes into images, not the other way around.
I sit on a high stool, my laptop at the ready. The trick is to hold back expectations, to curb the desire to visualize what’s about to come. “We are semiotics animals,” says Nake, “we have many contexts, whereas machines have only one context.” He wants us to “think the way our computers would think if they could think.” All around me people wear a blank expression on their face. I envy them.
The majority of the French students, I soon discover, have yet another advantage over me: their stream of consciousness is not crowded with contextual references. They’ve never heard of John Maeda; or April Greiman; or Ludwig Josef Johann Wittgenstein, for that matter. They are not elated, as I am, when Nake mentions some familiar names. They keep their eyes on the prize — programming — while I cling to each cultural reference, hoping against hope that this master class will be about philosophical ideas rather than about the systematic computation of enumerable infinites.
I left my comfort zone when I walked into the classroom. As a writer, I thrive on ambiguity. I have learned to “show, don’t tell” — to let readers interpret significant details in the text. Unlike readers, though, machines have no imagination. You have to tell them exactly what to do. Computers never interpret code on their own — in fact, Nake assures us, machines would prefer to idle in the sleep mode rather than carry out instructions. To nudge their lazy pixels into action, we have to whet their appetite with tantalizing algorithms.
The German Mathematician vs. the Dutch Master
For this workshop, Nake has decided to use the programming language of the software Processing to teach our laptops to draw like Piet Mondrian. It’s ironic, since Mondrian’s famous non-representational style is the result of a long pictorial journey from figuration to abstraction (from trees to grids), whereas we are going to try to understand his art backward, from abstraction to figuration.
To prepare for the class, Nake has worked from 5:00pm the day before until 3:00 am the next morning. His brain is still on fire. He hasn’t slept much. Mondrian has proven to be more of a challenge than he had expected. On his digital canvas, the well-tempered matrices of the Dutch master are still defying his sequences of algorithms.
Algorithmic thinking is the closest thing to pure reasoning. The various patterns generated by the Processing software only serve to test whether or not the proposed parameters are correct. Under Nake’s supervision, we spend hours figuring out possible equations before “running” the visual interface. When we do, it’s only to track out mistakes: diagonal strokes that show up uninvited, vertical bars that have a tendency to bunch up in the margins, or horizontal ones that stubbornly ignore instructions to stay apart.
Is the world of forms simply a verification procedure devised by some mathematical entity to make sure that his (or her) assumptions are correct? Nake seems to think so.
As the day progresses, the computational challenges are piling-up. Nake would love to keep on working, but we have to stop for lunch (we are in France). By mid-afternoon, we are still bogged down in procedural programming, in a quagmire of trial-and-errors. It’s pretty obvious that we will never get to object-oriented programming — the quantum leap into specifying the steps the program must take to control the behavior of forms. Impatient, a student sitting next to me has already programmed colors to randomly fill some of the rectangular fields, even though Nake is still exploring the finer points of Mondrian’s crisscrossed compositions.
We are in an art school, in the graphic design department. Visual literacy is the dominant culture. I glance around the classroom: will the next generation of designers be willing to postpone the instant gratification provided by the brilliant LCD images on their screens for the more elusive cerebral emotions of algorithmic thinking?
Meanwhile, the German mathematician is giving us a lesson in intellectual endurance. Far from being embarrassing, the difficulties he encounters are the source of amusement for him. In fact, his entire being seems to be made of glowing liquid crystals, so intense his concentration. “Geometry is like Heaven, graphics is like Hell,” he declares before initiating yet another round of cabalistic computations.
With the sleeve of his black linen shirt, he erases the previous layer of equations from the whiteboard. He turns to look at us. He is beaming. Wistfully, as if writing a programming statement between two semicolons, he says: “As soon as the real world enters, everything becomes special — and nothing works anymore.”
1/5 - Random polygon 1965 (13/9/65 Nr. 7)
2/5 - Fields of random cross-hatchings with vertical random lines 1965 (19/10/65 Nr. 1)
3/5 - Random walk through raster, series 2.1, four modes, 1966
4/5 - Random walk throughraster, series 7.1-3, 1966
5/5 - Untitled, 1970