3 Reasons Why I Chose to Create Code Generated Art
Not AI assisted, no mouse clicks, pure code, but why?!
The thing with art is, it’s both insanely objective and subjective. It really depends on who you ask. So when it comes to comparing different types of art, it becomes a weird discussion about who thinks what is more valuable, or maybe just more meaningful. This applies to all forms of art, and today I want to talk a bit about generative art, because I feel there is regularly some confusion about it.
Be sure to check out what I’m doing over at Iterative. RT, like, & comment nerds!
Now personally, up until a few years ago, I have always had this comparative discussion in relation to fine art, traditional performance art, and- or well hold on; I guess that’s not entirely true. Where does body suspension land in that landscape? Or shibari? Or body modification? I might be an art snob, but you better believe I apply that gusto to fringe art mediums/cultures.
I mean shit, look, a body suspension + LED art immersive environment! How much more fringe can it get:
Art has always been a way for humans to express themselves and explore their creativity. In recent years, there has been a growing interest in code driven generative art. More recently, AI assisted generatives have joined the scene, and it often feels like the AI stuff is taking over en masse when you visit marketplaces like Foundation, SuperRare, Makersplace, etc. I think it’s important to accept that generative art is a valid medium.
Code Generated Art
Code generated art is created entirely by code. This means that the artist-developer writes the code that creates the art, and the art is not influenced by any human input other than the code itself. Code generated art can be created using a variety of programming languages, including Python, JavaScript, and C++, and many more.
See this article for a brief visit into the origins of code generative art
I used to write Python scripts that would send patterns shooting across arrays of addressable LEDs, essentially creating immersive light installations for people to take selfies for the ‘gram with. Of course some folks would stop to enjoy the installations, instead of just treating as fodder for their social media presences, but in general, that was the primary utility (yuck), or value these popup installations offered.
I made these “Panels of Dub” for a music festival a few years ago; CNC cut steel front plates, with white acrylic backing to diffuse the light from a bed of addressable LEDs laid out in a square array behind it. They got water-logged in the rain and still worked, which is basically black magic IMO.
At the time I was building/coding stuff like this, I would view the light output in rudimentary visualizers, locally on the machine I would be using to write the code. I never once thought that that stuff was “generative art.” So color me surprised as fuck when I dived into the world of NFTs, and saw folks selling basic as shit code generated outputs for fucktons of money. See: Artblocks. Majority of this is utter shit IMO. Yeah, I know, unpopular opinion. Fuck Rothko, and fuck anybody selling wiggly worms from a JavaScript tutorial for millions of dollars. This is toxic market behavior.
But I digress. Code generated art is a fantastic thing to engage with, because you don’t need expensive software or hardware to create it. Anybody can learn to code, and you don’t need to pay thousands of dollars in college tuition to learn it. It is, in many ways, insanely equitable by its open source nature. I fucking love this. Besides, who doesn’t love some cool geometric face melters, or optical illusions? (Don’t answer that.)
AI Assisted Generative Art
I don’t even know why I created this subheading for this section. There’s only two sentences I wanna write about this. AI gen-art is pretty intense, and definitely has output that is visually appealing, and sometimes even emotive! But it takes control away from the developer-artist, and this is not something I am interested in doing with Iterative.
The end.
The 3 Reasons Why I Decided to Fully Code the Art
It was good for my mental health
I wrote about this in more depth in an article a while back, but I want to reiterate (badumtis) the significance of this. Rediscovering the mandelbrot set, and being able to lose myself entirely for hours at a time trying to get code to do my bidding has been a form of meditation. Sure, there were some frustrations along the way, but the feeling of succeeding in exploring and creating something that I think looks super freaking dope, is absolutely worth the annoyances.
It all actually started with my interest in p5.js and stumbling on Daniel Shiffman’s Mandelbrot tutorial. I love his tutorials, but his personality is way too chipper for me. This was the biggest challenge initially, because JFC DUDE CALM YOUR TATAS. His enthusiasm is intense, but it’s so worth it. He’s an absolutely brilliant human, and if you’re trying to get into Processing and/or p5.js stuff, he’s the absolute GOAT for this stuff.
Ultimately, when I finally got 3 dimensional fractals looping, it was an absolute breakthrough. I felt like I had plateaued on some good acid, and was suddenly in control of so many things. It was around 20 different “types” (read: function and formula combinations) that it struck me that I could make small collection of these to share on the Ethereum blockchain, and maybe help me get out of debt.
That first number was around 333. It later became 666, then 999. Now it’s 1111, of which 5 are actually generated digital art by some amazing artists (which I’ll be revealing very soon!). And yes, that’s 1106 code blobs I am going through for QC purposes. FML.
It allowed me to sneak my sense of humor into the art
Now as opposed to having something generate a bunch of output for me, and then going through them to cherry pick the ones that I think are acceptable, I found it a little more fun to actually generate the things I wanted to generate. This allows me to do things like generate rugs. Yes. There will be 3 very rare “rugs” in the Iterative v1 collection. It’s for the culture.
Additionally, being able to control things on this level, allows me to drop some humor in the code itself. Since this project will be fully open-sourced, I’ll be leaving some idiotic jokes that are commented out in the js files. That, and I’ll share some observations I’ve had along the way, that will probably only be funny for those that have lost their minds in code.
So there’s a bit of humor for everybody: In the visual outputs for a few tokens, and in the code for fellow console cowboys.
./lfg.sh
It allowed me to learn something new
Sure, one can have AI generate p5.js blobs now, but I am the kind of person that needs to comprehend and engage with every element along the way. It’s the same with suspension - I want to ensure the rigging is safe, top to bottom; I want to ensure the piercing is safe, and executed in a way that respects aseptic technique; I want to ensure I can fully connect with the humans beforehand, to ensure I understand what their personal requests and boundaries are. I want to do things right. No half-assing allowed.
In writing everything from scratch, and floating around in the liminal voids these iterations inhabit, I got to learn how to use p5.js better, and better understand how fractals actually work on a visual level. Furthermore, I found a new kind of discipline in my mind - this is where the meditative aspect comes in. Instead of writing/copypasta-ing bullshit web code for bullshit website gigs, or building bullshit apps in bullshit no-code environments like webflow, I was 100% fully engaged with every aspect of the process. The interface, the mental focus, the code itself, and even re-learning how to do basic to intermediate level mathematics; it was keeping all of my brain cells maxed out long enough, to keep my mind from wandering to dark places during a heavy bout of depression.
In conclusion, I would like to point out that while I did state 3 primary reasons for choosing to do all of this coding and nitpicking manually, and could have probably automated more stuff along the way, the overarching reason for this was to have full comprehension of what I was doing. I think folks tend to fall into extended anxiety and depression periods, because they are overwhelmed by the lack of control they feel in their lives. About money, relationships, health, you name is.
So what little we can do to retain some control, and achieve some flow states that keep our endorphin levels sated, is invaluable. Staying busy and engaged keeps one’s mind from straying, and this is a key mechanism to maintaining some semblance of sanity and balance. Just remember to touch grass, my back is fucking killing me!