I'm not against AI use in software development... But you need to understand what the tools you use actually do.
An LLM is not a dev. It doesn't have the capability to think on a problem and come up with a solution. If you use an LLM as a dev, you are an idiot pressing buttons on a black box you understand nothing about.
An LLM is a predictive tool. So use it as a predictive tool.
- Boilerplate code? It can do that, yeah. I don't like to use it that way, but it can do that.
- Implementing a new feature? Maybe, if you're lucky, it has been trained on enough data that it can put something together. But you need to consider its output completely untrustworthy, and therefore it will require so much reviewing that it's just better to write it yourself in the first place.
- Implementing something that solves a problem not solved before? Just don't. Use your own brain, for fuck's sake. That's what you have been trained on.
The one use of AI, at the moment, that I actually like and actually improves my workflow is JetBrains' full line completion AI. It very often accurately predicts what I want to write when it's boilerplate-ish, and shuts up when I write something original.