@grimalkina @Di4na in the case of llms for coding in particular, I don’t think of llms as automating but as “assisting communication”. Code, while it might be telling what the machine has got to do in _very_ convoluted ways, is about talking to other humans about what the machine should be doing, finding broadly understandable language encoding increasingly complex ideas.
(I’m really sorry about the autistic programmer brain dump): in my mental model, the thing an LLM is automating is taking an utterance “U” language “A” (“human language”, but I think that’s way too imprecise, seeing how a developer and a designer will talk differently about the same software) and turning it into language “B” which might make communication a bit more precise and hopefully executable by a computer. The value of the now trans-mogrified U in language B is on a spectrum from “runs on the machine, no one needs to read it” (which is where most people’s idea of using llms for coding roughly stops), to “now that U is formulated in B, it is much easier to communicate about its complexities”.
So in terms of vigilance and repetition, the focus should be on B, why it is being used, if it can be B’, what a good translation of A to B is, what prompt engineering can be done. Because then there is real automation and measurable quality standards that can be applied to the LLMs automation of the translation. That translation was always nondeterministic and highly problematic when humans are doing it (spec to code) and llms improving the translation doesn’t mean that the code has to be perfect.
To make it concrete: I often prompt “make an elegant JS API for problem X” (X could be for example ecommerce dashboards, JS is language 😎 and then look at the resulting spec and examples (it is not an _implementation_ of the API, it is a nicely written up study of what X formulated in JS might be). Once I refined and iterated and tried different variants of that, it barely matters if I write the implementation of the API or if the model does, because hopefully the translation makes that implementation self evident.
What the llm automates is writing the RFC of what writing dashboards in JS could look like.
(Sorry for the rambling, these ideas are hard to express…)