a great way to teach graphics programming
written by Theo Papatheodorou - MA course leader
At the Master's program in Computational Arts we often use art paradigms to teach technical skills like graphics programming to our students. One of these paradigms is generative art which has proven a great way of learning to code.
The traditional way of drawing involves taking a pen or pencil and trying to represent an object or a scene, real or imaginary. During this process you work towards a more or less predetermined goal. You are in control, and the outcome is somewhat predictable.
The generative way of drawing turns the traditional method on its head. It involves relinquishing some of that control. Instead of creating images, the artist creates a set of rules - often nowadays interpreted and executed by a computer program - which autonomously generate artworks.
Generative art is not something one builds with plans. It's something that's cultivated like a flower. The artist acts like a gardener who sows the seeds and then sits back and lets the processes generate an outcome.
A very important aspect in the execution of these rules is that they involve randomness or chance. Randomness takes away some of the control from the artist and adds unpredictability to the final result. At various points during the execution the program reaches a fork in the road. Which side is chosen is based on sheer chance.
As artist-coder Matt Pearson  says, “Generative artists are chaos artists. They have bred the unpredictable, welcomed it, harnessed it and can fashion it into pleasing forms.”
Generative processes don't only result in digital images. They have been used in music, visual art, literature, poetry, architecture and even dance. The choreographer Merce Cunningham would famously throw dice during some of his performances to decide what the next steps should be. John Cage's Music of Changes (1951) was largely conceived through random procedures. The Beijing National Stadium, also known as the Bird's Nest, was designed generatively.
Despite being produced by cold processes, generatively-produced forms often appear organic. Furthermore, they contain a level of complexity that would have been difficult for a human agent acting alone to create. Finally, they are unique. The number of random choices that led to the specific outcome are very unlikely to be repeated.
Generative art is an important element of the Computational Arts Master programme at Goldsmiths. The degree gives students the programming skills to create artistic work using digital technologies. Recent graduate Angie Fang  was inspired by time-lapse photography to create digitally-generated flower blooms. After setting the parameters, she allowed sound input to determine the size and location of each petal, creating a unique blossom every time. It is this mix of the real and the virtual, the organic and mechanical that makes Angie Fang's work so interesting.
Another student, Lior Ben Gai  used a photosensitive micro-controller to ‘grow’ artificial bacterial colonies. He based his work on cellular automata, in which complexity at the group level emerges from a simple set of rules at the individual level. At Goldsmiths’ recent MFA show, Lior hung a lamp above a petri dish, allowing visitors to manipulate the growth of unique digital colonies inside.
Generative art provides endless possibilities for creativity. If this article has got you excited about making art using computers and code, why not apply for the programme by clicking here?
 Pearson M. (2011). Generative Art. Shelter Island, NY: Manning Publications Co.
 Explore Angie’s website at bongbongsquare.com
 See more of Lior’s artwork at soogbet.net