Eight Days Early
On January 3, 2023, I was happily playing with p5.js and WEBGL, exploring how textures could wrap around a torus. Instead of using ordinary patterns, I painted two names onto the bicycle tires: Gavin and An. The HTML page greeted the coming year with the words, "Happy New Year. Gavin, An and Rhea."
There was only one small detail.
Rhea had not yet been born.
She would arrive eight days later.
More than three years passed.
The sketch disappeared into an old ZIP archive while life moved on. Rhea learned to walk, talk, climb, build LEGO creations, and began calling Grandpa whenever she wanted to show something exciting.
Then, while rescuing my old p5.js sketches for the Living Gallery, I opened this forgotten file.
The spinning bicycle returned exactly as it had been left on January 3, 2023.
For the first time in years, I noticed something I had never thought about before.
The tires carried only Gavin and An.
Rhea existed only in the greeting.
The code had unknowingly captured a family standing at the edge of a new chapter.
I almost changed the code.
Then I stopped.
The bicycle is perfect precisely because it is incomplete.
Had I added "Rhea" today, the animation would become technically more accurate but historically less truthful.
Instead, I chose to preserve it exactly as it was.
The absence of her name on the tires quietly tells a story that no annotation could ever tell.
Sometimes what is missing speaks louder than what is present.
Programming preserves more than algorithms.
Every project quietly records a moment in life: what we cared about, who surrounded us, what future we were imagining without even realizing it.
Three years later, this little bicycle became more than a graphics experiment.
It became a time capsule.
Today, the little girl who had not yet entered the world is building LEGO crocodiles, discovering museums, and connecting the word "Grandpa" with "Math."
Meanwhile, her grandfather has brought the bicycle home to the Living Gallery, where it can keep spinning for many years to come.
Creative coding can preserve moments of life, not just ideas.
Mathematics, graphics, and memory unexpectedly intertwine over time.
Sometimes our old code remembers things that we ourselves have forgotten.