
I have a chapter in this excellent book, along with a variety of international artists and designers, including Jonathan Harris, Carla Diana, and Aaron Koblin. The book includes step-by-step tutorials by each author.
Flashbelt 2008 is looking to (once again) raise the bar for creative web technology conferences. I've said this again and again over the past five years - if you are going to choose one conference to go over the year, make it Flashbelt. The speakers' list this year is perhaps the best ever - here's a little taste:
And there's more. Check out the conference site for the full list, and to get a taste of what each presenter will be talking about.
The theme of my talk this year is emergence. It's a concept that has been central to my work from the start and over the last year or so I have been thinking a lot about the role that emergence plays in the creative process. Here's my official session description:
"Emergence refers to the way that complex systems and patterns arise out of relatively simple interactions. In this session we'll look into some of the ideas behind emergence, and will explore in detail the role it plays in the creative process. We'll talk about the role that emergence plays in a variety of diverse areas, including AI, economics, and philosophy. Along the way, I'll show a variety of new generative works which tread into emergent territories, and will unravel some of the underlying code that brings these projects to life."

Variance was born out of a year-long exploration into genetic algorithms and evolutionary computing, and their possible applications within the creative process.
It can be argued that the traditional design process is not too far removed from the classical evolutionary process. Individuals (our designs) are introduced into a competitive environment (our brains, or perhaps, our clients' brains). The ones that survive are deemed to be the best. This fits nicely into the low level 'survival of the fittest' model of evolution but it doesn't consider some of the other key elements - namely mutation and hybridization.
Variance is an attempt to provide a creative tool for designers that can leverage some of the power of evolution. Using Variance, designers can harness genetic algorithms to brainstorm or refine compositional ideas. The classical design process becomes the Evolutionary Design Process.
I would consider this version of Variance to be pre-alpha - it is more of a proof of concept than it is a working application. Still, it show some promise. Here, I'll use the application to design a logo for Variance itself.
The first step is to select colours, compositional elements, and typefaces. We do this from the 'controls' panel:

Darwinstruments allows the user to create multi-tone sound toys using genetic algorithms. Each sound toy is a neural network with nodal virtual instruments. To activate the nodes and hear the instruments, the user simply has to mouse over the graphical clusters. Each of the Darwinstruments will behave differently, and as such will play a different composition when activated. Selecting two instruments (they become red when selected) and hitting the hybridize button will engage the process of breeding a new population:
This process can be repeated. While the population starts off quite different (notice that the clusters above vary in symbols and composition), after a few rounds of hybridization, they optimize:

The control panel on the left allows the user to toggle between different sound sets. The slider at the top of the control panel adjusts the action potential of the neural networks - networks with a higher potential will behave more erratically
Darwinstruments was built in Flash, using ActionScript 2.0.
I've been somewhat disappointed with my creative output as of late. So, with a day off of client work, I set out this morning to make something interesting before the end of the day.
I've been exploring color visualization over the last few months, and during one of my experiments, I came up with a result that looked something like a feather. Today I decided to take that idea further, and built Plumage, which takes a Flickr tag and creates a set of feathers from the colour data in the image.
It also gave me a chance to write my first PHP script - two whole lines! Next time, I'll work on three.
Let me know what you think - I'd love to hear comments and suggestions. As always.
At FlashBelt in June, I demoed a Flash application in which a population of rockets evolved to find the best path towards a target. I've polished that example up a bit and put it up for everyone to play with.
The rockets in this simulation have 5 engines, which, initially are positioned randomly around each rocket. The engines have a random strength, a random rotation, and also a random firing pattern - determining when the rocket will fire. A sample rocket might have a rotation of 90 degrees, a strength of 0.1, and a firing pattern of '1010101010101'.
The rockets are trying to get to the target, using the least possible amount of fuel. Fitness is determined, then, by a combination of proximity to the target and leftover fuel. The fittest individuals from each generation are selected and hybridized to create a new batch of rockets.
Over generations, you'll see the rockets start to find the best path. If you leave it long enough, they should find the best possible path that uses the least amount of fuel.
You can control a variety of parameters for the simulation, through the text fields at the bottom left. The most important of these is mutation rate - see if you can figure out what the best rate of mutation is for optimizing the system.
I am going to have the source cleaned up for this before FFWD in September. If you want to get a crack at it sooner, please let me know and I can get you a .ZIP file.
Jason Brownlee, a Ph.D. candidate from Swinburne University of Technology, sent me this e-mail while I was on vacation:
I'm currently compiling a list of online (applet/flash/ajax/etc..)interactive evolutionary processes. Generative art in particular seems tomake up a large proportion of what's out there and was hoping you may havesome links (off the top of your head).
The projects must use evolution (some kind of evolutionary process) and must be interactive (human cost function or human manipulation of some kind).
I sent him a couple of links, but surprisingly I couldn't think of a lot of examples off the top of my head. If anyone can help out with some links, please let us know.