Forming versus coding

May 28, 2010

Having been trained as an Industrial Designer I have always seen design as a form giving process. Communications designers might see it differently, but I think of manipulating and organizing materials, physical or virtual, when I design anything. I have been wondering recently whether this is an outmoded paradigm.

As designers get asked to tackle systems problems such as behavior change we discover that the final form of the system is unknowable. It is too complex to be able to define every element or predict every outcome. So should we use form making as the central process to design systems which have unpredictable forms?

Just last week I sat through a fabulous talk by author, futurist and investor Juan Enriquez. He described the impact life sciences might have on business and society. In particular the topic of synthetic biology got me thinking about how design might be changing. The scientists can now create synthetic cells. Indeed one of Juan's more famous collaborators Craig Venter made an important announcement about this just a few days later. They will soon be designing new synthetic organisms that can perform all kinds of unique tasks and as scary as this might be it has big implications for design. Instead of forming the material of the organism, in the way that a horticulturalist might create a new hybrid plant, the scientists use code. They literally recode the DNA to create new cells with new behaviors.

Assuming no major ecological disasters, it will not be long before the technology is developed enough to get out of the hands of scientists and into the hands of designers. We will be coding behavior, not forming it.

Is this how we should think of all design in the future? Using the code of 1's and 0's or A's, T's, C's and G's to design complex behaviors that evolve and are emergent rather than fixed and determined. Or perhaps this is a false distinction. Perhaps design has always broken complex systems down into small parts and formed individual components (products, services, buildings, applications) that come together to create system level behaviors. Perhaps it is the interplay between forming and coding that will be key to design.

How will designers learn the skills of  coding so as to participate in the design of future systems?