| ▲ | orev 3 days ago | |||||||||||||
Writing the code is like writing an essay—maybe you have some ideas in your head, but the act of writing them down forces you to interrogate and organize them into something cohesive. Without that process, those ideas remain an amorphous cloud, that as far as you’re concerned, are perfect. The process of forcing those thoughts into a linear stream is what exposes the missing pieces and errors in the logic. | ||||||||||||||
| ▲ | onion2k 3 days ago | parent | next [-] | |||||||||||||
Without that process, those ideas remain an amorphous cloud, that as far as you’re concerned, are perfect. This is absolutely not the case. My first startup was an attempt to build requirements management software for small teams. I am acutely aware that there is a step between "an idea" and "some code" where you have to turn the idea into something cohesive and structured that you can then turn into language a computer can understand. The bit in the middle where you write down what the software needs to do in human language is the important part of the process - you will throw the code away by deleting it, refactoring it, improving it, etc. What the code needs to do doesn't change anywhere near as fast. Any sufficiently experienced developer who's been through the fun of working on an application that's been in production for more than a decade where the only way to know what it does is by reading the code will attest to the fact that the code is not the important part of software development. What the code is supposed to do is more important, and the code can't tell you that. | ||||||||||||||
| ▲ | pvelagal 3 days ago | parent | prev | next [-] | |||||||||||||
I totally agree. Trusting the LLM means, you are not thinking anymore and are happy with the high level ideas you had before you started coding, which may be incomplete. Missing pieces will be missed until you see issues in Production and I have seen this happen. | ||||||||||||||
| ||||||||||||||
| ▲ | dangets 3 days ago | parent | prev [-] | |||||||||||||
Or similarly the difference between reading/listening to a foreign language vs. writing/speaking one. Knowing how to read code or learn algorithms or design is different than actually writing it. The difference between the theory and practice. | ||||||||||||||