Using AI for Programming
7/25/26
LLMs are a weird advancement in technology. There are many valid reasons to not like them. A few people in silicon valley controlling a tool that will help them get even richer while destroying the environment is not great. But even putting that aside, many are trying to use AI to do creative work. I think AI is worse then useless for any kind of creative process. They're unable to have original ideas, instead synthesizing stolen creative work to try to approximate a soul resulting in uncanny lifeless garbage. Even just using LLMs to help brainstorm ideas is destructive. They have no point of view. They can't disagree with you. They can't offer feedback.
I'm not sure what to think of using AI for programming though. At first I really really hated it, but over time it's become impossible to ignore. Claude Code allows me to accomplish more, but it's hard to feel proud of something that was generated by a predictive network. The more I use AI the more I've questioned what programming means to me.
I taught myself to code when I was young, and I've spent most of my waking life since programming. I have always been a programmer. When AI first hit the scene it threatened this identity. If AI makes programming obsolete, what will I do, who will I be?
I wasn't afraid of it at first. AI coding tools were demonstrably terrible in the beginning. I predicted that there was some kind of logarithmic ceiling to AI's programming ability, and it had already plateaued. Then I took a 3 month sabbatical from work, and when I returned it was like a flip was switched. Suddenly, Claude Code could take in basic requirements for a task and generate a pretty good PR for it.
I decided to try Claude Code on a weekend project for my game, a solitaire variant. Done by hand, it would have taken up the whole weekend. I needed to write code to render cards, drag and drop them, stack them, apply game rules, etc. To my surprise, Claude Code got pretty close very fast. It used my existing code and generated a working solitaire engine. It wasn't perfect, but the core of the game was there. I'd saved many hours of time, and I could focus on ironing out the kinks and designing rules.
Playing this new solitaire game felt weird. In the past when I programmed something and it finally worked, I felt a sense of pride in it. I didn't feel that at all with this game, but that might not actually be such a bad thing. Without the sunk cost of programming effort I've found that I am more honest with myself about what's working and what needs to change.
The core realization I've had is that code has always just been a tool. It's not the code itself that's important, its the thing you make with it. I was never a programmer, I am a guy who makes games and software.
The biggest downside I see in this change to the way games get made is that it enables laziness. Programming games from the ground up is a great way to cultivate taste and learn what makes games good. When you have to implement every line of a system, you're thinking about it on a deeper level, considering finer details that separate mediocre games from great games. If an LLM spits out a working platformer controller in a few minutes, its making hundreds of decisions for you, and if you never learned about things like coyote jump or input buffering you might accept a worse product.