Yet Another Blog Post About Programming With AI
I had a moment of insight this morning about one benefit of using Claude Code, Codex, and CoPilot for my hobby projects. I have been experimenting with languages and platforms I have not worked with before. Because I do not REALLY know these technologies, I can't be certain AI isn't giving me insecure, bloated, buggy code that would never make it past a code review by anybody who knew anything. And that's absolutely wonderful for me. Why?
I have always learned best by doing hands-on work and solving real problems. When I start a new job, I like to be assigned a couple of small bug tickets during my onboarding week. Fixing a bug is a great way to dive in and learn a bit about the architecture, team coding standards, and business logic. In the past, when trying to learn a new programming language, I would breeze past the tutorial level, and then hit a wall. Without a real problem to solve, I never seemed to get to the next level.
So, vibe coding an app in an unknown language is giving me a real application to debug and improve. I refuse to release code I don't understand — but I'm also not the kind of code reader who will spot tiny details just by reading. I need to get my hands dirty and get deep in the code. I need to write tests, change things in the UI, see what is in the database, and generally "feel" what is going on and how all the pieces fit together.
Coding with AI is going to do so much toward getting me past "tutorial level" with some new languages precisely because it's not perfect. Heck, it would almost be worth prompting the AI to intentionally throw in a bug or two. Luckily, at least for now, that's not necessary because AI comes up with enough bugs of its own.