Christian Ekrem, a developer who likes Elm and functional programming, writes about software design, theory building, and programming craft.
Commenters link his posts on Naur's theory building and the lack of a silver bullet when discussing AI-generated code and mental models.
> The process didn’t work before because the person writing the requirements either put out vague requirements or bad requirements because they didn’t understand the business intent (or were careless).
You make it sound like writing good requirements is easy.
If it were easy we wouldn't need all these concepts around PMF, product pivots and the like. And even before that was Peter Naur's paper "Programming as Theory Building" [1].
If you truly understand the problem you're solving with software then requirements can be easy. But usually we don't, not right away, and so we have to build up our understanding of the problem first in order to solve it.
Even then, the problem we solve may not have been the problem paying users will have, so you can have "good requirements" and still have a bad business, or even the opposite where you somehow build a working business despite bad requirements, because you hit upon a customer's need quite by mistake.
Nothing about any of this precludes LLMs being helpful, though nothing guarantees LLMs will be helpful either.
[1]: https://cekrem.github.io/posts/programming-as-theory-building-naur/
Interesting, reminds me of Peter Naur’s (https://cekrem.github.io/posts/programming-as-theory-building-naur/) beliefs where building mental models is more important than the mere code output itself
So easy to fall into a slop tsunami without actually knowing what the code does or how it works
This is a good intro https://cekrem.github.io/posts/there-is-still-no-silver-bullet/