It’s back

For a while I thought I’d lost my creativity. Maybe it was the busyness of work or my former employer being acquired in what some might consider a dramatic fashion. I’d stopped programming in the evenings for fun. A few months back I found I felt creative again-partly because of AI tools. A small part of me doesn’t want to admit that, but it’s the truth. I don’t use AI for everything I do. I prefer to write posts like this without AI, for instance. But it’s been really nice solving technical problems more quickly, and more importantly having help to get ideas from my head to my computer in hours and days instead of weeks and months.

Late last year I had a transfer switch and batteries installed at my home, and like most proprietary systems there’s no public API and no Home Assistant integration. I wanted the latter so I opened Claude, had a discussion about requirements and sent it on its way. I answered some questions and a few hours later I had a Home Assistant integration that I was too scared to try. I came back to it after a couple of weeks, backed up Home Assistant, and installed it. The integration worked out of the box, save for one control and incorrect units on some virtual sensors. I removed the former, fixed the latter and it’s been working flawlessly since February.

A little less than two months ago, I decided I wanted to make an RTS game. This was a much more ambitious project so I set some rules for myself: I didn’t want a second job, I didn’t have to release it-it was just for fun. Again I opened Claude, installed Unity (yes, I’ll try Godot next) and went on my way. That’s a story for later, but as a tease, here’s what I had at the end of day 1:

Day 1: boxes and capsules representing units can be selected and moved on screen

And here’s the prototype after day 5. (It’s come a long way since, and it’s got a long way to go.)

Day 5: something that resembles a real RTS game with two teams, healers, melee and ranged units, plants, and more

I’m not sure whether I’ll release this, but it’s been a great way to learn what sort of prompting techniques work well and don’t. For instance, imagine describing in text things like the angle you’d like a unit to hold a staff in 3D space or giving it ideas on how to validate solutions to problems like missing polygons on the back side of generated 3D models, or arms facing the wrong way. This is trickier than you might think. It hasn’t been perfect: I’ve hit both model and my own limits, had the agent gaslight me, etc. but I’ve made more progress than I could have imagined. I’ll share more about the game’s progression (and another side project I recently started) if there’s interest. Anyway, you should go make something!

Btw, you can follow me on Mastodon or Bluesky, where I post occasionally