A description for your experimental camera.

What is the purpose and usage of your camera? What subject is it meant to capture? And what kinds of meaning emerge through seeing your subject through your experimental camera?

My experimental Camera is essentially an exercise to demonstrate how machines learn using genetic algorithms on a basic level, and how data is tracked to us.

NOTE: The camera functionality central to this sketch doesn't appear to work when the sketch is running on this site. Click to see the code and try running it in the p5js webeditor. That should fix it!

Describe your design process

Include all three of your design sketches and explain how you’ve ended up choosing one.

I started off with an idea of a code that I wanted to use in my camera. I had already started dissecting some ‘smart rocket’ code and thought that if I could get the target to track to the face, causing a bunch of little rockets to ‘learn’ how to find you, it would be really interesting. As a result, a lot of my little sketches centered around that.

Images

Closing Notes

My favorite idea was changing the rockets to random blocks of text that represent certain data points (ie. eye color, nationality, gender, sex, age etc)and have them find a face on screen. I had already played around with it and customized it and figured that plugging in the new variables was work. I was wrong and at the last possible second my code stopped working, gave me a ton of errors and essentially refused to cooperate. I went back to the drawing board several times, each time returning with a new, usually worse, error. It was at this point that I realized there was no getting around it, and I would have to pivot to another idea that didn’t use the rockets the way I wanted them to work. I decided to take a step back and I replaced the little rockets with text that read “data”. I replaced another rocket with the word “twitter”. If I had more time, I’d love to make a little random data csv or multiple rockets so that I can have multiple data points.

The Code I used and How I Changed It

The code I was working with: I used the smart rocket code to create the rockets, genes, obstacles and targets. I customize the appearance of the rockets, their speed, and their numbers. I had to go through and understand all of the broad functions, why they worked and which functions were called where in order for it to work.

Reflection

Overall, this assignment was unexpectedly challenging for me. By the time I ran into errors, I was already far enough along that I felt like I shouldn’t turn back, but felt like the task of modifying and understanding the code was too much. My choices were mainly limited by my knowledge of how to optimize my code. I wanted to make a lot of things but didn’t want to reach a point where I ended up with “spaghetti code” or just something too hard to navigate.