Wherever there is number, there is beauty.
Proclus wrote that somewhere between 412 and 485 AD. I’ve been carrying that line around for years. Not because I’m a mathematician—I’m not—but because I feel it. The beauty in numbers. The strange alchemy of turning equations into images.
That’s what generative art is, really. You learn the math. You write the code. You tweak parameters, run the script, and wait to see what the machine gives back. Sometimes it’s noise. Sometimes it stops you cold.
It’s also not new. Art historian Jason Bailey traces a clear line from Cézanne straight through to generative art—the fracturing of geometry in Analytical Cubism, the machine aesthetic of the Bauhaus, the autonomy and chance of Dada and Abstract Expressionism, the bold geometry of OpArt, the algorithms of Sol Lewitt. When I started making images with code, I wasn’t inventing something. I was joining a conversation that had been going on for over a century.
I spent years learning my part of it. R. Processing. Harmonograph curves. Mandala algorithms. Chaotic attractors that look like the nervous system of the universe. I’d sit there, adjusting a single variable, watching the output shift from garbage to something I wanted to frame.
And now?
Now someone types a sentence and gets something beautiful.
I’m not bitter about it. But there’s a word that keeps surfacing when I look at my old work: quaint.
Like hand-drawn maps after GPS. Like vinyl after Spotify. Like writing letters after email. Not worse, exactly. Just… from another time.
Back in 2019, I wrote: I want to use all the tools available today to express myself creatively. Adding my laptop just made my palette huge.
I meant it. Still do.
But the tools changed. In 2019, “all the tools” meant learning Python, understanding bezier curves, debugging why your randomness wasn’t random enough. It meant process. The joy wasn’t just the image—it was the discovery. The surprise of what code could produce when you fed it the right numbers.
Now “all the tools” includes typing a sentence. Vibe coding. Describing what you want and watching it appear.
The images are often good. Sometimes great. And the hours I spent learning to plot a harmonograph? Optional now. Unnecessary, even.
So what was it for?
I keep coming back to the process. The making. Not the artifact, but the path to it. Learning the math was the point. The frustration of debugging was the point. The moment when the output finally matched the idea in my head—or surprised me with something better—that was the point.
AI can generate the image. It can’t generate the years I spent understanding why the image works. It can’t give me the feeling of discovering, for myself, what happens when you modulate a sine wave against a decaying spiral.
Maybe that’s sentimental. Maybe it’s cope. Maybe it’s just what we tell ourselves when the world moves on.
But here’s the thing: I don’t regret any of it.
Not one hour spent learning R. Not one late night tweaking parameters. Not one image that came out wrong before the one that came out right.
The toolset has been upgraded. Fine. I’m genuinely curious what’s possible now—what I can make with prompts, with AI, with whatever comes next.
The old way wasn’t a waste. It was how I got here.
And wherever here leads, there will still be number. And there will still be beauty.




