Code, as such, is a detailed, verifiable spec that a machine can execute. LLMs are already great at translating code to natural language and vice-versa. Why do we need a second, less detailed and less verifiable copy of the code?
The answer is exactly on you question. Code is detailed. It need to has every implementation detail, a spec is high level view demoted of all unnecessary details!
re-thc|2 days ago
Because it requires people to know how to read or specify code.
Spec driven development is similar to the no-code movement i.e. the specs are closer to functional requirements than this strict spec or code.
You can argue that you can just ask the LLM to explain back and forth but it can still be too much.
kikkupico|2 days ago
But then you'd get an explanation tailored to your specific perspective instead of a generic one, right?
cclacerda13|2 days ago
kikkupico|2 days ago