Conventional wisdom tells you that LLMs are good at automating the generation of boring, repetitive boilerplate code. I can agree, but why do we need to write that boilerplate again and again in the first place? Isn't that a failure of our industry as a whole? Why do we need to translate short sentences of lousy and imprecise human language to thousands of lines of syntactically-correct formal language with inscrutable hidden behaviours and semantic anomalies? Wasn't the point of high-level computer languages for humans to express computation in an unambigious and ergonomic manner? I don't want a probabilistic mumbo-jumbo machine as an interface between me and the computer.
I want to express my intent clearly and concisely in a formal language, using abstractions that are sound for the problem at hand. Where could these abstractions live? They could be in the kernels of operating systems, in middleware, in libraries, in language semantics and runtimes. We don't need to recreate them in every sloppy LLM-generated project that tries to become a million-dollar business. LLMs don't help us disentangle the mess that is the software world. They are a tool that aggravates the problem, while their proponents feel productive and enthusiastic.