I built a film out of 167 family photos for my mom's birthday, with the rule of no generated content on screen. The rule held against generated images and broke everywhere else.
All of this was vibe-coded, so that was constant. What varied was how specific the target was.
The first build rearranged pixels from multiple photos into a single one. I did not understand the math, but I knew what to look for: how long the sort can run before motion stops reading as pixels, what edge detection has to preserve for a face to survive. When a render came back wrong, I could say how. It worked.
Every build after carried one requirement: better than the last one. A golden spiral, a Droste portal, a depth dive, high-dimensional solids with photos on their faces. Each aimed at beating the previous round rather than at a specific end goal. Four were built and discarded in the end.
An under-specified target still gets specified, and what specifies it is whatever is doing the generating. My rule covered pixels and visuals, cases I could physically see. The decisions above the pixels (what the shot is, why this construction and not another) went unnoticed.
I did not know what a Droste effect was when I asked for one, so I was guessing at what the output should be. It failed because Escher's construction needs the whole plane to be self-similar, and a photo isn't. I realized after multiple renders rather than an afternoon of research.
The tasks were different, so direction isn't cleanly separated from ease. Domain expertise I can rule out, as I had none in any rounds.
What perplexes me is that I could never localize a failure. I could see that a render doesn't look right, but not whether the construction or the parameters were wrong. I hypothesize that specific domain knowledge into 2D and 3D geometries and transformations would allow me to better localize these issues, and possibly lead to more satisfying animations.
Writeup, with video: https://ameya-bit.github.io/notes/better-than-the-last-one/
Code: https://github.com/Ameya-bit/photo-constellation
Thanks for the feedback.
I was trying to write this more like an experiment rather than an experience I had, as I want to enter some research-driven work in the Fall. I thought something simple might be good practice. I did use AI to condense the post and push it towards that academic tone, which is probably why it reads LLM-like. I also realize that I didn't setup the underlying story.
There were 4 different builds, the first that worked, and the other 3 that didn't.
I had around 167 photos of my family, and I wanted to showcase them in a grand way. So my f... (read more)