3 ms·
Yes, we already have excellent programming automation. They're called compilers. No one has yet succeeded in making a language that can convert a spec to code,
by moomin 9y ago
Yes, we already have excellent programming automation. They're called compilers.
No one has yet succeeded in making a language that can convert a spec to code, especially when it ought to deal with things that are "obvious" and as a consequence never mentioned, special cases that no-one's ever really thought about, fundamentally contradictory requirements &c &c &c
- kasey_junk 9y agoThat's because the spec is the code. The product is the binary. Human "specs" are more analogous to statements of intent. Ever higher levels of abstraction will come about but generating the "spec" will continue to be the programmers job.
- chii 9y agoI think the kicker will be when natural language and AI becomes good enough such that a non-technical person can state their intent, and computer generate a working interpretation. Then that person iterates.
- moomin 9y agoI think the natural endgame of that will be Skynet deciding to murder all the humans.
- KSteffensen 9y agohttp://www.ted.com/talks/sam_harris_can_we_build_ai_without_losing_control_over_it#t-227265 http://www.ted.com/talks/sam_harris_can_we_build_ai_without_...
- kasey_junk 9y agoThat will speed up developer time, as will expert systems that automatically account for known failure modes and ever more sophisticated operational environments. But that person talking to the AI, will need to know best practices about stating intent, experience with when that goes poorly, and an ability to think about the problem and break it up into stateable intentionality. All of that is just a developer doing their job...
- oblio 9y agoYour average non-technical person will be long bored before they finish their program. Heck, that boredom kills a lot of programs even today, before they are finished. Look at the graveyards of Open Source known as Sourceforge and Github :p I'm not saying that these "graveyards" don't also produce a lot, but the vast majority of programs are never finished. And that's for generally trained professionals who love or at least like what they're doing.
- lmm 9y agoA compiler that could ask the right questions when the spec is ambiguous would be able to replace most of what a programmer does.
- AnimalMuppet 9y agoBut then the "programmer" becomes the one who answers the questions. That's not going to be a trivial job.
- lmm 9y agoI've found that a lot of the time the businesspeople with the requirements know the answers, though they don't necessarily know what they know - a lot of the programmer's job is in figuring out the right questions to ask them.