'AI' Sucks the Joy Out of Programming

https://programming.dev/post/39805616

'AI' Sucks the Joy Out of Programming - programming.dev

Lemmy

Yeah, the places to use it are (1) boilerplate code that is so predictable a machine can do it, and (2) with a big pinch of salt for advice when a web search didn’t give you what you need. In the second case, expect at best a half-right answer that’s enough to get you thinking. You can’t use it for anything sophisticated or critical. But you now have a bit more time to think that stuff through because the LLM cranked out some of the more tedious code.

(1) boilerplate code that is so predictable a machine can do it

The thing I hate most about it is that we should be putting effort into removing the need for boilerplate. Generating it with a non-deterministic 3rd party black box is insane.

Hard disagree. There is a certain level of boilerplate that is necessary for an app to do everything it needs. Django, for example, requires you to specify model files, admin files, view files, form files, etc. that all look quite similar but are dependent on your specific use case. You can easily have an AI write these boilerplate for you because they are strongly related to one another, but they can’t easily be distilled down to something simpler because there are key decisions that need specified.

All of that can be automated with tools built for the task. None of this is actually that hard to solve at all. We should automate away pain points instead of boiling the world in the hopes that a linguistic, stochastic model can just so happen to accurately predictively generate the tokens you want in order to save a few fucking hours.

The hubris around this whole topic is astounding to me.

I think you underestimate the amount of business logic contained in boilerplate. (Or maybe we’re just talking about different definitions of what boilerplate is). LLMs can understand that business need while most code generators cannot.

LLMs do not understand anything. There is no semantic understanding whatsoever. It is merely stochastic generation of tokens according to a probability distribution derived from linguistic correlations in its training data.

Also, it is incredibly common for engineers at businesses to have their engineers write code to automate away boilerplate and otherwise inefficient processes. Nowhere did I say that automation must always be done via open source tooling (though that is certainly preferable when possible, of course).

What do you think people and businesses were doing before all of this LLM insanity? Exactly what I’m describing. It’s hardly novel or even interesting.

OK sure if you want to be pedantic. The point is that LLMs can do things traditional code generators can’t.

You don’t have to like it or use it. I myself am very vocal about the weaknesses and existential dangers of AI code. It’s going to cause the worst security nightmares in humanity’s recorded history. I recommend to companies that they DON’T trust LLMs for their coding because it creates unmaintainable nightmares of spaghetti code.

But pretending that they have NO advantages over traditional code generators is utter silliness perpetuated by people who refuse to argue in good faith.