4 ms·
> Isn’t it the case that you can use plain English to explain _exactly_ what a piece of software does, and as such, you can, _exactly_ supplant software with pl
by kaba0 3y ago
> Isn’t it the case that you can use plain English to explain _exactly_ what a piece of software does, and as such, you can, _exactly_ supplant software with plain English?
Is it any easier to do that than to “program”? In my mind that’s the exact same thing, just a different, less syntactically strict programming language. Writing good specification is crazy hard, and it usually incomplete, so you end up going back and forth with the human compiler (the programmer) to get a common understanding.
One might even argue that a cleaned up, domain-specific language actually helps mutual understanding. It’s not always the case that written text is easier to comprehend — see for example math notation.
- xp84 3y agoI've been thinking about this argument and while I agree that having a symbolic construct ("Code") that strictly models the solution is ideal, arriving at that model via a single 'layer' of code which must have been written perfectly by a programmer is a big hurdle given the small fraction of humans who seem to have an aptitude for programming (just like with advanced math too). It's probably a less versatile strategy than iteratively building it assisted by AI guided by natural language. I think in the future, the AI agent will probably code the application, asking its human "PM" partner to clarify each ambiguity, and adjusting as it goes. Finally, it should be able to generate charts, narratives, and diagrams to explain how the created application works, for validation of the solution by a non-programmer.