CryptoKitties Family Graph Visualizer

Writing CryptoKitties: What Happened Next made me want to see the connections between my kittens as a graph.

I thought it would be cool to generate an image of the connections between my kittens, but ended up vibe coding and releasing an open-source interactive family tree visualizer for CryptoKitties which can be used to explore breeding relationships, discover mewtation gems, and visualize a kitty lineage.

Here's my kitty family:

Click any cat to see details. Double-click to expand its family tree. Pink edges are matron (mother), blue edges are sire (father).

What the graph shows

Zoom out on any large dataset and patterns emerge.

Dragon sold for Ξ600 in September 2018. Load its ancestry alongside my cats and there's exactly one shared ancestor: kitty #1461. Born November 23, 2017, five days before launch. Part of the seed population. Nobody special at the time. Nine generations down one branch, Dragon. Through another, Mulberry, my mauve munchkin.

Read more →

180 Degrees Twice

Plugged the adapter between the DE-9 and the dongle.

Power on.

Flashed the refactored firmware. The one that had only ever run in the simulator.


Still nothing.

Wrong pins were fixed. New bugs took their place.

Claude Code was watching the serial log with me. Had been the whole time. Two windows open: Claude Code on one side, the log tailing on the other. Every state transition, every WiFi event, every failed AI call streamed past both of us.

Fix one thing. Next thing breaks.

Each fix uncovered the next. Weeks of simulator work couldn't catch any of them. Hardware could.

The last one was a single line. The main loop was returning early when WiFi wasn't connected, skipping all typewriter code. Moved the return. Recompiled.


Typed on the typewriter:

did that fix it? i think it did. 180 degrees twice is a full circle.

Daisy wheel spun. Carriage moved. Print hammer struck.

One moment...    It s-seems my circuits are aligned, Writer. Your
insight is keen; one hundred eighty units, doubled, does indeed
trace a perfect revolution.

Read more →

The AI Pair Programmer

Building ArchAIc with Claude Code partly to understand how it works and what my teams are doing, how they're using it. What does it do well, and what does it do... not so well.

Can't evaluate AI pair programming without experiencing it hands-on. Can't set policies around AI coding assistants without knowing how they work. Team leaders ask "should we let juniors use AI tools?" and I can't answer from theory. ArchAIc is my data source.


Started about a week ago. Created git repo, pointed Claude Code at the firmware, started asking questions.

A dozen PRs merged since then. Tests written from scratch. The initial refactor. Infrastructure. Display architecture. Typewriter web simulator. Hobby mess starting to look like professional software.

A week.

Timeline feels wrong. Projects like this take weeks. Git log shows it's real.

Read more →

The Great Refactor

Code worked. That was the problem.

The Arduino IDE sketch had grown organically. Functions calling functions. Global variables everywhere. Typewriter protocol tangled with AI logic tangled with LED control. Everything connected to everything.

It printed AI responses. It had a name. It worked.

But the workflow was killing me.

Arduino IDE couldn't manage the ESP32-S3-N16R8 board settings cleanly. Is PlatformIO the answer? And coding with AI meant copy-pasting. Describe a problem to Claude or ChatGPT. Get code back. Paste it into the IDE. Test. Find the issue. Go back. Describe what happened. Get new code. Paste again, or worse, manually diff.

ChatGPT had built the captive portal in minutes. Getting those changes into the actual project took longer than writing them.

Tried Cursor first. AI-native IDE. Installed it. PlatformIO extension stuck on "Initializing". Turns out the official extension isn't on Cursor's marketplace. Downloaded the VSIX manually. Installed it. Needed another extension. Downloaded that one too. Wrong binary architecture.

Gave up on Cursor. Used PlatformIO from the terminal instead.

The migration itself took all evening. In a Claude.ai chat window. ZIP files back and forth. "Here's my source code". "Compilation failed, attaching the errors". Five rounds. Fixed the errors. Zipped it up again. Sent it back. That was the last time I worked that way.

The next morning, I installed Claude Code.

Read more →

ArchAIc

Happy new year!

Thinking...  A truly happy new year to you too! May your words flow
freely and your ideas always find their perfect form.

Tell me about the new New York City mayor.

 Hmm...  The new Mayor of New York City is Zohran Mamdani, who took
office on January 1, 2026, becoming the city's 112th mayor. He is
notably New York's first Muslim and Asian American mayor, as well
as the first from the borough of Queens.

That's today's news. Printed on a typewriter from 1986. The AI searched the web, found an event that happened a few hours ago, and typed it on paper.

Will the machines replace us?
Read more →