Slashdot Mirror


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.

7 of 140 comments (clear)

  1. Dumb by RightwingNutjob · · Score: 5, Insightful

    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!

    1. Re:Dumb by Intron · · Score: 5, Insightful

      Why do people keep trying to automate coding, which I spend less than 10% of my time on? What about:

      • - Converting nebulous requests into requirements docs
      • - Convincing the "architect" who hasn't coded anything in years that your functional spec is the 21st century way to meet the requirements.
      • - Going through countless design reviews on the proper background color of the alert dialog
      • - Finding the bug in the vendor-supplied library which is 6 versions behind the current version.
      • - Updating the night before release based on the new customer requirement that your manager forgot to tell you about.
      --
      Intron: the portion of DNA which expresses nothing useful.
    2. Re:Dumb by RightwingNutjob · · Score: 5, Insightful

      I'll tell you exactly why: only a small segment of the population (maybe 1%) has figured out that the point of using computers, as opposed to doing things with pencil and paper, is precisely that computers do exactly the things they are told in exactly the order they are told, every time vs humans who don't. That 1% has always understood that the hard part isn't crunching the numbers, and never has been; the hard part is figuring out what operations to do in what order to get the right answer.

      The rest are (and always have been) operating under the misapprehension that computers are electronic brains or oracles that you can converse with as you would another human being.

      The fact that people like Vanevar Bush and Norbert Weiner encouraged this attitude in their attempt to explain computers to 'the common man' did more damage to the public perception of computing than anything else because it was done early and set the tone for public perceptions and those public perceptions are the first thing that almost everyone encounters first in their lives, whether they go on to be an MBA in the corner office or whether they go on to be a kernel hacker who makes more money than the MBA for shaving a few microseconds off of a trade an HFT software stack.

  2. Oh no. by mhkohne · · Score: 3, Insightful

    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.
  3. Been hearing this for, oh, 40 years or so by bfwebster · · Score: 4, Insightful

    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)
  4. Re:Learning language by JustAnotherOldGuy · · Score: 4, Insightful

    There is nothing fundamentally different from spoken languages in programming languages.

    This is so wrong it's clear off the x1000 scale of Wrongness.

    --
    Just cruising through this digital world at 33 1/3 rpm...
  5. They will that's the problem. Then they'll hire me by raymorris · · Score: 4, Insightful

    > 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.