Here are some of the results from the Slow Life workshop which we ran over a couple of days in Aberdeen this January. Thanks to Sonada who organised our sessions and other audio workshops getting people to focus on the slowCooker themes of slowness and boredom. Jun and Francesco did a great job of making us feel at home and thanks to Peacock Visual Arts who provided their hackspace and gallery for the mini exhibition.
We had a small group of participants who had a mixed knowledge of coding from complete beginners to a couple of experts. We chose the theme of slowness (not sure if any of the workshops addressed boredom!) which reminded us of the coral programs we had run at a couple of Microworlds in the past. Pixel by pixel these corals built up a scene over the course of a day – and we decided to explore these simple life-like simulations using cellular automata type approaches. We used the Processing language because it is great to teach, and simple to install.
We created a suite of simple programs which worked on a grid of small rectangles using various rules to change the colours of each rectangle. In line with the Game Of Life each cell only had access to local information, so for example the colour of its neighbours would effect whether it changed colour in the future. The cells could also randomly wiggle about, and we allowed for rule changes to happen every so often to add variety to the programs. We showed some slides of our previous attempts at simulating nature and discussed Artificial Life. The aim of the workshop was to allow people to invent their own simple rules and see if these could generate something that looked like something in nature. We were looking for gradual accumulations of effects – posing the question is this (or somethig like this) what is going on in the real world?
The classic in this area is Conway’s The Game of Life. We introduced this program in 2D and 1D versions and one of the students, John, adapted the 1D version to create a simple textural generator. By adding rules which used information from the previous sweep (or effectively the past) John added more variety into the patterns generated. In some runs the screen would eventually wipe itself away so John had to carefully select rules which kept a balance of effects. You can see the difference between the top chaotic half and the more ordered bottom half below.
Another student adapted a simple coral program which allowed pixels to wander around the screen until they found a piece of coral and then attach themselves to it. Andrew, who had never coded before, managed to work out over night how to introduce an image into his work, and we helped him to make the coral pixels take colours from that image, which was itself of sealife shells, creating a striking piece of generative art which endlessly attempted to redraw itself.
Bea was another participant who used The Game of Life to create some sophisticated images. Bea had used Processing before so got straight into adapting the rules and using the rhythmic patterns generated as a kind of image filter. Bea filled the whole end wall with a science fiction styled virus image, by applying grid values to transparency effects. Bea and another participant Mark are part of art group Sunglow Sound who create sound installations and are based in Aberdeen. Hopefully the workshop has given them some more ideas about using simple visual code to simulate organic effects. Here’s a still from Bea’s piece…
And one from Mark’s.
Mark adapted a Demons (or Racing Demons or Rock Paper Scissors) rule set – and looked to try and break it down by inserting random variables which changed the active neighbourhood of the cells. He pushed the variables as far as they would go before they broke down completely and wiped away everything. As a result the piece went through a huge variety of forms, with waves of activity in all directions. But it would sometimes die out. In which case he just restarted the program with a new random set.
Jamie got stuck into the Game Of Life 2D and quickly discovered some interesting expanding and contracting patterns. The whole second day was about experimenting – try something and see what happens – if you like it keep it otherwise try something else. By changing random variables weird new behaviours occured. By the end of the day Jamie had created the starting point for a new type of rule set which allowed different pixels to survive depending on what colour they were – new pixels would add and then eventually we think new structures would appear. This had interesting potential and looked a bit like a star field but was so slow that we didn’t get to see the novel structures even after a couple of hours. So in terms of slowness which was the theme of the weekend this piece was the clear winnner! It will be fascinating to see if Jamie, who was new to Processing, manages to tweak his code in the future to bring out what he is looking for.
Karolina and Leila were two more participants who were new to Processing. On the first day we did a beginners guide to moving coloured shapes and pixels around the screen in response to the mouse. Karolina found an interesting ray like effect which turned out to be an artifact of the rendering engine on her laptop which we thought looked pretty cool. Leila worked with the Demons program and inserted her own colour gradients and rules. By changing a single variable from a c (for colour) to an x (for distance across the screen) she found an amazing variation which showed all kinds of intelligent looking activity – like a lot of ants going about sorting data. This type of chance find is exactly why programming with beginners can be so exciting – as they do things which people with more knowledge would never think of. We will be exploring her find in the future trying to understand what is going on. For the show Leila went back to a jazzy yellow and blue variation of demons. This had phases of stillness and then as the next rule set kicked in a minute later huge activity which was great fun. We pointed a webcam at this piece and projected the image on top of it adding a layer of feedback onto the wall.
Another rule set we demonstrated was called Seed which we wrote as a kind of generalisation of some of the other rules. In Seed you just gave the computer a list of cell arrangements to look out for and told it what to replace them with. So for example look for a red cell above a black cell and replace it with a red cell below a black cell. This would make the red cell effectively fall down the screen until it hits the bottom border. By adding more rules to change the colour of the seed cell and then make it grow upwards it was possible to create generative story boards. Nicola played around with Seed to build her own crazy cityscape generator. This program has great potential and we will be developing it further in the future as a way of teaching basic computer logic. Here’s a still from Nicola’s program.
The most experienced programmer who took part was Rae. He took ideas from the day and developed his own sophisticated take on generative forms. He used fractal tree structures which grew and then dropped their own fruit which would in turn start a new tree, after time creating a rich forest. His future plan was to add worms to the scene to eat away some of the trees and thus build a more dynamic ecosystem. Filling the entire end wall Rae’s piece was a dramatic take on the themes of the workshop.
Overall the two day workshop was a great success and everyone learnt some new coding techniques and produced some interesting generative art. Hopefully we have sown some ideas for future projects. We look forward to seeing what events Sonada organise in the future – they are keen to use some of these projected works in a full scale exhibition setting. Aberdeen has the beginnings of a flourishing digital art scene and Sonada are very much part of that.