Hardware Meetup with added Claude

This is the device. Check out that welcome deal

I took everything with me to the Hardware Meetup tonight. Everything, that is, except the Raspberry Pi PICO I was supposed to be working on. Ross took pity on me and lent me an ESP32 powered display that he had brought along to play with. A while ago I’d seen a video of someone who just plugged a random device into his PC and then asked Claude to figure out what it was and how to program it. I figured I’d have a go at that. The results were deeply scary.

Claude was able to identify the device and even pull out the demonstration program inside the device memory. Then it had a look at the code and told me what the demo program did. I asked Claude to re-write the demo in Python. Claude thought for a while and then told me that Python would be too slow for the graphical update. So I suggested Claude use Rust instead. Claude then figured out that I didn’t have rust on my laptop and offered to instal it. Then Claude figured out that I was using Windows on ARM, found the correct version of the SDK, installed it, tried to build something, failed, updated some elements and rebuilt others. Then it managed to get a test program running on the device. This was in around an hour or so and is officially amazing.

It was great to see so many folks turn up and just set to building stuff. And we kind of managed to make the local pizza place look busy when we went for dinner.

I took this picture when I got back home. I now have Rust code running on the device, and Claude is decoding the original binary and writing a Rust version of it. We live in very strange times.

AI for things you don't want

I already know what the bedroom looks like

We’ve upgraded to the latest AI version of Alexa (Don’t judge me. It was free and I like new toys).

Now screens about the house offer to “Write a Haiku about how your day is going” or “Describe your surroundings”.

Is there anyone in the world who has ever needed a Haiku writing about their day? And if I’m standing in the kitchen holding a mug of tea, I don’t really need a device to say “I can see bloke in a kitchen holding a mug of tea”.

Not using AI is fun too

this picture was also not made with AI

Today I wanted to finish off the menu system for my tiny navigating program for the PICO. I could have spent some time writing a prompt for Claude AI to use to create the code. But today I thought I’d spend around the same amount of time actually writing the code. It was awesome.

I didn’t have to spend any time figuring out what the code did since I already kind of knew. And bug fixes stuck because nothing else in the code changed when a fix was applied.

And I really felt that I owned what I had built, which was nice too. AI is great and can do amazing things, but I’m trying hard not to forget how to do it myself.

AI Images

I’ve got this Raspberry Pi connected to an e-ink frame. I’ve written a little program that generates random text prompts from a set of keywords. The text gets fed into a copy of Stable Diffusion and every few hours a new picture appears. It’s quite fun. Today I added a little web server to the app so that I can view past pictures. None of them are very good, but I find them fascinating.

Reverse Vibe Coding

“Vibe coding” is apparently a phrase of the year. It describes a programming practice where you tell an AI system what you want a program to do and then AI writes the code for you. Then you test the code, it works perfectly, you embed it in a mission critical system and everyone lives happily ever after. Or not.

I’ve tried this a few times and what I end up doing is what I call “Reverse Vibe Coding”. I describe what I want, the AI makes something which mostly works. I describe what changes I think should be made to make it work properly, the AI then makes something new which may, or may not, be better. And then we repeat. There seem to be inflection points in the process where the AI can jump in massively the wrong direction and you have to kick it back on track. Rather than AI helping me solve my problem I end up helping AI solve its problems. This is kind of fun, but not usually very efficient. Although the AI probably learns a lot.

AI is nice. Only humans can be kind.

A nice person can be expected to give you what you want. A kind person can be expected to give you what you need (which might not be what you want). AI is in the business of being nice. Once it has figured out what you want it considers that the job is done. It is really hard for a human to work out how best to be kind, and it is a human thing to want to try.

I’m far from convinced that we can ever encode kindness into an AI. I think it adds a layer of introspection which would be an order of magnitude bigger than what we are doing at the moment. This doesn’t mean that we can’t use AI. It just means that when we do we need to remember that is only ever nice.