trashpanda.cc

Kohlenstoff-basiert Zweibeiniges Säugetier

Over-caffeinated juniors

The more I use AI tools like Cursor, Copilot, Windsurf etc, the clearer the actual use case becomes.

It isn’t new. I’m old enough to remember when scaffold generators were new and exciting - the famous “build a blog engine in 30 minutes” demo that launched Ruby on Rails is 20 years old, and was a sign that these tools were going to change the development process.

That said, there were plenty of people moaning at the time that using scaffolds wasn’t “real coding”, and junior devs were going to learn bad habits. The software industry has always had its fair share of grey-haired old farts resistant to change.

Some of criticisms were true, though - relying purely on scaffolded code would get an MVP out of the door, but it wouldn’t necessarily be scalable or performant or secure (enough).

AI coding tools are practically identical. They can speed up development dramatically, and for low-stakes prototypes or experiments why not throw that vibe-coded result into use?

But left to their own devices, they very quickly end up building over-complicated implementations with different approaches mashed together all over the place. Some parts of the codebase will be tested to exhaustion, while others get completely ignored. The tool will happily & confidently burble away telling you that everything is complete and secure, but taking a second to check will show up the gaping security holes.

Putting that into production - without someone watching what’s going on - is asking for trouble, and quite honestly you’ll deserve what you get if you do.

The mental model I’ve developed is that the tools have the knowledge of a senior developer with the experience and the impulse control of an over-caffeinated junior fresh out of a 6-week bootcamp. They have an extensive knowledge of esoteric techniques and approaches, practically zero knowledge of when it’s appropriate to use them, and hypermaniacal tendencies to disappear down rabbit holes of ever-increasing complexity.

Guide LLM coding tools, and you can probably 3x to 5x your own productivity. But let them off the leash, and you’ll end up with a baroque disaster which will come back to bite you if you’re foolish enough to rely on it for production-grade needs.