"My programs are like DNA."
I’ve always thought of coding as a hard skill, like plumbing or auto mechanics, until I came here and spent time with aBe Pazos.
aBe taught our first two weeks of programming classes at the School of Machines, Making & Make-Believe, running us through the basic building blocks of the Processing. He describes his own coding like this:
[My] programs are like DNA: they produce virtual creatures and little worlds which I later explore. I often discover surprisingly beauty hidden in them.
Inspiration comes from everything that surrounds me. I think of the rules that led to their existence, and I imitate, remix and alter those rules to see what happens. 'What would happen if…' is one of my favorite tools.
The more time we spent with aBe, the more coding looked like a way to ask questions and explore rather than a new way to swing a hammer. Some of the earliest lessons in Processing are focus on drawing shapes.
"How would you make this circle angry? In love? Afraid?"
We're also doing a bit of deconstructing nature. What are the simple rules that make things seem alive? Take on a personality of their own? The conversation makes me think of Conway's Game of Life. With a few simple rules...
- Each cell with one or no neighbors dies, as if by loneliness.
- Each cell with four or more neighbors dies, as if by overpopulation.
- Each cell with two or three neighbors survives.
- Each cell with three neighbors becomes populated.
...you get a squiggling mass of "living" automata:
We've been running through a few exercises that help us to understand how small combinations of physics, probability, and dashes of randomness can create doses of artificial life.
Here's a simple example of a series of little autonomous snakes code-doodled by one of the School of Ma students:
The perspective of code-as-exploration is helping to break down some of the complexes I have about my own capabilities in this space.