Has The NSF Automated Coding with ExCAPE? (adtmag.com)
The National Science Foundation is developing a way to create working code using "automated program synthesis," a new technology called ExCAPE "that provides human operators with automated assistance.... By removing the need for would-be programmers to learn esoteric programming languages, the method has the potential to significantly expand the number of people engaged in programming in a variety of disciplines, from personalized education to robotics." Rajeev Alur, who leads a team of researchers from America's nine top computer science programs, says that currently software development "remains a tedious and error-prone activity."
Slashdot reader the_insult_dog writes:
While its lofty goals of broadly remaking the art of programming might not be realized, the research has already made some advances and resulted in several tools already in use in areas such as commercial software production and education...
For example, the NSF created a new tool (which they've recently patented) called NetEgg, which generates code for controlling software-defined networks, as well as Automata Tutor and AutoProf, which provide automated feedback to computer science students.
For example, the NSF created a new tool (which they've recently patented) called NetEgg, which generates code for controlling software-defined networks, as well as Automata Tutor and AutoProf, which provide automated feedback to computer science students.
If you don't have to learn the intricacies of some esoteric computer programming language, you'll have to learn the intricacies of this esoteric NSF project. Next!
They won't automate software development until they come up with a system that can handle creating correct software from incomplete and partially erroneous specifications which don't remain constant between the start of development and delivery. At best they'll be able to automate some of the tedious boilerplate coding.
Yet another thing that will draw a bunch of people who can't think into programming.
Guys, the languages are NOT the root of the problems we have (they don't necessarily HELP, but they aren't the problem). The problem is people who can't wrap their heads around what they are doing, or the problem they are trying to solve, or the fact that they actually have to check their own work.
The problem isn't the languages, it's the people.
A thousand pounds of wood moving at 300 feet per minute. Don't get in the way.
There is nothing fundamentally different from spoken languages in programming languages. Difficulties with learning programming languages or any second language has more to do with how we teach people to learn more than anything else. We spend so much time trying to have students focus on the boring aspects of literacy when there is no evidence that they are prerequisites for everything else. Knowing the multiplication table doesn't prepare you for other mathematics.
Not to be an old programming fart (but, hey!), but this comes up about every 5-10 years. Someone has created a system for automatic program generation that is going to replace programmers (4th generation languages, anyone? How about "The Last One"?), and it turns out to have only limited usefulness.
Of course, code generation programs exist. They've existed almost as long we've been programming computers. The most common are assemblers and compilers, which take in text specifications and generate running code (or sometimes bytecode to be interpreted). And if you stop and think about the difficulties that most of us who code have with making source code that we write produce running code that meets our needs, you can immediately see the issues with replacing or bolting on top of that system a 'source code generation' system. It can work very well as long as you don't exceed what it can actually do and only if the code generation system itself is well-written and reliable. (This is why developers feel a sense of betrayal and anger with compiler bugs more than any other kind of tool bug.)
So, yeah, like strong AI, self-coding systems are always 5 to 10 years out and have been for half a century. ..bruce..
Bruce F. Webster (brucefwebster.com)
... they did not.
The software engineers are required to extract the problem out of customers, who often don't know what they want.
"Has The NSF Automated Coding with ExCAPE?"
NO, they have not "automated coding". All they've done is provide a layer of abstraction to some predefined procedure functions.
And who wrote that layer of abstraction? Real programmers working with actual code, that's who.
Can you program through a Joe Sixpack GUI? Maybe, but that GUI and all the shit behind it didn't fall out of a fucking tree. It had to be written...in code...by actual developers.
When Joe Sixpack uses this thing to write a medical billing program with a data warehouse and credit card gateways, let me know.
Just cruising through this digital world at 33 1/3 rpm...
Programmers like myself like to believe we are exempt from being made as replaceable as possible. We're not. Whether it's Outsourcing, H2B, or crappy projects like this... Greed finds a way. The programmers of today will be the mill workers of tomorrow. I hope society figures out a better economic model by then, because *everything* we've tried up until now seems to fail significant amounts of people.
By removing the need for would-be programmers to learn esoteric programming languages, the method has the potential to significantly expand the number of people engaged in programming
Because we really need more amateur programmers fucking things up and creating software with exploitable bugs. Who needs information security anyway...
Assorted stuff I do sometimes: Lemuria.org
The choice of 'automated" word is unfortunate. This helps coding, but an human operator still has to tell the machine what to do, which is programming.
True automated coding could only be claimed the day human operator will be removed from the process.
> When Joe Sixpack uses this [gui] to write a medical billing program with a data warehouse and credit card gateways, let me know.
Oh they WILL point and click their way to a Sharepoint site that stores personal medical information, accepts credit cards, and emails it all as an Excel spreadsheet. And it'll look like it pretty much works, most of the time. (It doesn't bother anyone with alerts when it fails on numbers with more than four digits, so nobody sees any problem.) They just saved $6,000 over having a developer with a clue involved!
Then some script kiddie will find it, the manure with strike the ventilation, and the company will spend $250,000 cleaning up the mess, much of that going to the security company I work for.
(Instead of spending billions on this mad A.I. boondoggle though, they probably should have hired me to write whatever it was instead.)
The poltical types are unaware how much money has been wasted in the effort for decades. Most people believe computers work like "Open the pod bay doors, Hal" rather than complex mechanisms that must be carefully prescribed tasks.
This effort has had a budget of 10 million spent over 5 years so these guys need to show some results in this election year. I would like to see the budget for the 4th generation computer effort and all the other work to make programmers obsolete. When the real bottleneck is alway the specification and feature creep (my mind drifts back to the old Saturday night horror movie presentation called Creature Feature....).
ExCAPE is a research program and grant, not a single finished piece of software. The output from such programs is mainly publications and ideas:
https://excape.cis.upenn.edu/p...
Automated programming, program synthesis, and similar projects have a long, long history:
https://en.wikipedia.org/wiki/...
The NSF isn't developing anything. The NSF has created a program that funds large scale research grants to universities. In this case, the grant is to a collaboration of several large universities to explore ways to meet this goal. If you click through the article and then to the page about the project, including the universities involved in the collaboration (MIT, Cornell, Michigan, UPenn, etc...), you can see actual useful information: https://excape.cis.upenn.edu/i...
IDEs like Visual Studio generate code using a GUI. Report builders like SSRS generate code using a GUI. There are lots of examples, and they all have one thing in common: they work within very limited boundaries. Visual Studio generates code to produce data entry forms; SSRS generates code to produce reports. This project might generate some specific class of applications. That's nothing new, but it will certainly never replace general purpose languages.
The answer is always NO.
Il n'y a pas de Planet B.
NSF is a US government foundation supporting science through grants. They are NOT developing anything nor are they patenting anything. NSF is funding organizations, mostly universities, but has a clear disclaimer statement: "Any opinions, findings, and conclusions or recommendations expressed in this material are those of the author(s) and do not necessarily reflect the views of the National Science Foundation."
The original article does not make any such claims and indeed states "a research project funded by the National Science Foundation" - the poster, EditorDavid, should have been a bit more careful.
NSF does not actually do things - they *fund* other people who do things. NSF also cannot patent anything (nor can any part of the government), and the submitted patent for NetEgg has nothing to do with NSF.
Shit like this has been around for decades from Clarion http://www.softvelocity.com/ to Windev http://www.windev.com/index.ht... . And no don't balk these products never took the skill out of programming they just automated the tedious bits about browses, forms and reports you still had to be a good programmer to make the shit work.
Build a Man a Fire, and He'll Be Warm for a Day. Set a Man on Fire, and He'll Be Warm for the Rest of His Life.
The joke's on you! This is just another of the latest and greatest, for ever and ever frameworks to re-implement everything in. Another latest and greatest, for ever and ever framework, no need for anything more, ever, we really mean it this time, will come along again shortly.
I've been through about 10 of them during my quarter century career.
(-1: Post disagrees with my already-settled worldview) is not a valid mod option.
I think you fleshed out what I was trying to say about the connection between natural languages rather well, so good job.
One thing you said that I missed in my initial response to this post is your notion of mathematically defined. I believe that no corner of reality can escape being able to be described mathematically.