Art from Code: Boolean Oceanography Post-Mortem

img_0997 img_0996 img_0998

Preliminary Sketches for Boolean Oceanography ^^

For my conference project, I have made a collection of eight videos that use generative methods to create aquatic motifs through Processing sketches. In each sketchggg, vector drawings warp, contort, and move across the screen in jumpy, irregular, and vibrant patterns—specifically, drawings of whales, jellyfish, and the ocean sun fish. Some sketches are technicolor, blending all of the colors on the RGB scale; while some are monochromatic black and white. All of my videos explore the relationship between digital environment and code, creating imaginative, dreamlike, semi-psychedelic vistas of glitched out aquariums.

In the beginning of my project, I had a much more static vision for a project that relied more heavily on a drawer’s sensibility rather than a coder’s. My initial plans accounted for sketches that were much less dynamic and much less up to chance. These plans did not include the addition of noise or variance, and overall would have had very ordered compositions. As I worked on my virtual ocean, I experimented with different ways of adding noise and variance into my sketches. The more I played around, the more distorted and less ordered my sketches became. While there is undoubtedly a lot of room to add more noise and complexity to my sketches, I am happy with the way that they turned out.

What is right in my pieces is the overall aesthetic. I was able to translate my hand-drawn, loud, messy style well into code. I was very happy with the way that my project evolved as I worked on it. I was unhappy with the amount of restraint that the code had, and wanted to give my work, and the computer, more freedom. This comes across well in sketches like Mola Mola, where the messy, chaotic, rainbow knot on the left hand side contrasts hard against the solid black right hand side. While the drawing of the sunfish itself is highly ordered, and it’s path is somewhat ordered in a way, there is a lot of noise in its motion. The contrast between order and disorder of the two halves of the sketch, and the contrast between the order and disorder of the sunfish vector drawing, definitely highlight the way my praxis, and ultimate product work, changed as I was working on Boolean Oceanography.

The most difficult part, as I already touched on, was adding disorder to my highly ordered plans. It was hard for me to figure out ways that I could hand over more autonomy to my code, and allow it to speak for itself without specific and repeatable instruction from me. I was stuck making these trite little animations that had very few if any generative qualities. But, as I experimented and learned to add noise into my sketch, my work changed and took on a life of its own. Adding more disorder, more noise, and variance to my sketches made them more dynamic, more engaging, and more interesting to look at. My biggest challenge, one that I’m not sure I’ve quite met yet, has been adding variety to my sketches so that they grow and develop on their own and are not so heavy-handed, calculable, and exact.

Surprisingly, learning to vector draw was the most dramatic development of the project. I was really limited by my ability to only draw simple two dimensional shapes in Processing. Getting to draw the ocean-life shapes that I wanted was the most rate-limiting step of my project. Learning to vector draw really broadened my capacity to achieve my vision, and opened up the on-screen canvas. I found myself becoming more inspired when I was working with my own unique drawings instead of basic geometric shapes. I worked slowly, but with good work ethic throughout this project, but at the end when I was trying to add more noise and complexity to my sketches, I could have been more patient and taken more time to more deeply develop each one.

In terms of code, I used the active mode to create sketches that loop indefinitely. Some of my sketches, like Cnidaria Medusozoa, uses a custom function to reset itself and begin fresh each time that the sketch runs its course. Others, like Rainbow Cetology 1 and 2, repeat over and over again, new layers piling on top of older ones and never completely resetting itself. I tried to limit the number of variables, choosing randomization in many instances over specificity for this reason. Most of the time, I used variables to represent specific x and y location values, and then added standard increments to those values, sometimes adding noise and variance at each step. While all of my animations loop in some way, none of my sketches are interactive. While visually engaging, the viewer can’t actually alter the way that the sketches run in any way. This is an area where I could implement change in another iteration of this project. Genuinely, I tended to forego using axes in lieu of setting variables and choosing my own values. For whatever reason, this worked the best with my coding sensibility.

Overall, my final work does achieve a lot of what my original vision set out to do. Aesthetically, it is very pleasant to look at and is a good representation of my artistic sensibility. I love the way that my colors explode across the screen and are vibrant and almost corny. My colors add an old school vibe like something from an old arcade game. Where my project falls short is in its complexity. I said in my proposal that I wanted my project to be dynamic and imbued through and through with generative qualities. Unfortunately, I was unable to give my code the autonomy that I wanted to. I had trouble finding the balance of order and disorder that I sought out, and, in another future iteration of this project, I would definitely throw order out the window and try to add as much chance as possible. I think that I held too much control without allowing the system its own due measure of autonomy.

screen-0001-copy c-1227 c-0391 c0415 c-0145 c-0054