Slashdot Mirror


Microsoft Research Developing An AI To Put Coders Out of a Job (mspoweruser.com)

jmcbain writes: Are you a software programmer who voted in a recent Slashdot poll that a robot/AI would never take your job? Unfortunately, you're wrong. Microsoft, in collaboration with the University of Cambridge, is developing such an AI. This software "can turn your descriptions into working code in seconds," reports MSPoweruser. "Called DeepCoder, the software can take requirements by the developer, search through a massive database of code snippets and deliver working code in seconds, a significant advance in the state of the art in program synthesis." New Scientist describes program synthesis as "creating new programs by piecing together lines of code taken from existing software -- just like a programmer might. Given a list of inputs and outputs for each code fragment, DeepCoder learned which pieces of code were needed to achieve the desired result overall." The original research paper can be read here.

338 comments

  1. But the requirements by Anonymous Coward · · Score: 5, Insightful

    they keep changing.

    1. Re:But the requirements by Big+Hairy+Ian · · Score: 3, Interesting
      Funnily enough most of the projects I work on the requirements get written after the software is complete.

      Sadly I'm not kidding about that but looking at the summary it sounds analogous to when sound samples were used to replace session musicians with the exception that you describe the music you want and the computer goes away and splices a load of sound samples together into a piece of music which matches your description. Somehow I don't think John Williams needs to worry about his job

      --

      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.

    2. Re:But the requirements by Oswald+McWeany · · Score: 4, Insightful

      Most of the projects I work on the requirements NEVER get completed. It's usually someone popping by the office saying "I need an app to do X" to which I ask a few questions and the answer is usually "I don't know- just write the app".

      I either hit the target- or redo parts of the app after deployment because the business user doesn't even know what they want until they have something and it is either "it" or "not it".

      --
      "That's the way to do it" - Punch
    3. Re: But the requirements by reanjr · · Score: 1

      No. The requirement is that the software do something useful for the company and provide ongoing value. The feature list and documentation are what comes out at the end, after you have figured out how to meet the requirement.

    4. Re:But the requirements by Cajun+Hell · · Score: 1

      ..most of the projects I work on the requirements get written after the software is complete. Sadly I'm not kidding about that..

      Look at mister fancy-pants formal development process here, where requirements eventually get written. Braggart!

      --
      "Believe me!" -- Donald Trump
    5. Re:But the requirements by OffaMyLawn · · Score: 1

      Right? I've been working on my current project for a little over 2 years, and I'm not entirely certain I've seen anything resembling requirements, and we've delivered several working versions of the product used in production. Then someone walks by and says "But why doesn't it do X..." and we start the whole process over again.

    6. Re:But the requirements by barbariccow · · Score: 1

      nail on the head.

    7. Re:But the requirements by jlowery · · Score: 1

      By the time you've completed the requirements (assuming you were involved), you already know better than to implement the requirements as stated.

      --
      If you post it, they will read.
    8. Re:But the requirements by ChoosyBeggar · · Score: 1

      Oftentimes, the customer is unable to articulate what they want, and they're pissed when they don't get it.

    9. Re:But the requirements by Oswald+McWeany · · Score: 1

      Indeed, and I now consider that part of the job; to know what the customer wants, even if they don't.

      --
      "That's the way to do it" - Punch
  2. Nothing to worry about by Anonymous Coward · · Score: 1

    If it's learning from the Windows code base.

    1. Re:Nothing to worry about by the_Bionic_lemming · · Score: 2

      *this*

      I've tries to use their service with a timer code - all iterations - and it just doesn't work

      If their "AI" is drawing on their "code Base" people will be asking for refunds.

      --
      _ _ _ Go for the eyes Boo! GO FOR THE EYES!
    2. Re:Nothing to worry about by Anonymous Coward · · Score: 0

      And nothing to worry about if the quality of generated html is any indication for the quality of machine-generated code . . .

    3. Re:Nothing to worry about by Anonymous Coward · · Score: 0

      y request
      create win10 without telemetry and with win7 interface...
      make it happen msAL

  3. Stackoverflow coding by Anonymous Coward · · Score: 0

    search through a massive database of code snippets and deliver working code in seconds

    Isn't this what real programmers do already? Minus the "working" part, of course.

    1. Re:Stackoverflow coding by Anonymous Coward · · Score: 0

      This is what "most" programmers do. They're called "Full Stack" programmers, copying all of their code from StackOverflow. Real programmers can program even if they have never seen source code in any form or have ever been taught about programmers.

      I know when I was 6, I had never seen a computer before, and I saw one running a screensaver at a tech convention. I asked the person why they had a "movie" of some strange animation that had been playing for nearly an hour. The person said it was not a TV, but a computer, and it was generating the images in real time using math. Mind...Blown.... I instantly set to work trying to think of how I would design something like a calculator, but could generate images. I pretty much reinvented ASM on my own in a matter of minutes.

      A few years later, I finally got my first book on ASM, and it was pretty much exactly what I thought it would be. Having already spent years thinking about how I assumed it would work, I was a natural at ASM and found it trivially easy. As "easy" as it was, it was too verbose for me, so I set out to find another language similar to ASM, but would short-hand all of the boring work. I discovered C.

      A few days into reading a book about C, I was again bored. No reason to practice programming because the concept was too natural to me. I spent the next decade not programming, but reading about problems in programming and thinking about them. By the time I actually got to doing real programming in the real world, I found everything trivially easy, right down to multi-threading.

      My biggest challenge has been writing clean code the first time around and trying to write code that others can more easily understand, which is mostly related to clean code in general. Programming has always been as natural as breathing for me, it's all of the wet-ware around programming that I have trouble with. When programming is breathing, it's difficult to teach other how to "breath". "Just take a breath, hold for a second, then breath out. Rinse and repeat. How much simpler can I explain it?"

  4. I know I'm being selfish, but... by Baron_Yam · · Score: 5, Insightful

    Can we just hold progress back another 40 years or so? I'd like to be cold in my grave before the world changes so much I can no longer find my place in it.

    Also, the massive social upheaval during the transition period between our current system and whatever replaces it is likely to be extremely unpleasant for the average person.

    1. Re:I know I'm being selfish, but... by rmdingler · · Score: 0

      Can we just hold progress back another 40 years or so?

      Much like the inevitable cure for cancer and off-planet settlements, the newest wonder-tech is generally always presumed to be 20 years away.

      --
      Happiness in intelligent people is the rarest thing I know.

      Ernest Hemingway

    2. Re:I know I'm being selfish, but... by Anonymous Coward · · Score: 0

      I don't understand posts like this. Why do you want to waste 40+ hours per week on a job that delivers little in the way of satisfaction or pleasure? Even if you're a well paid programmer, you're probably working on something that doesn't interest you, and therefore isn't particularly fun or rewarding.

      Wouldn't you rather have more free time to work on something that is of interest to you and that you believe would benefit other people? I worked as a programmer for a few years when I came out of university, but I concluded that my free time is far more valuable to me than a decent wage. I now work in a low paid part-time job, and while I have no money and no retirement plan, at least I can spend most of my time on projects that interest me.

      I hope the pace of automation increases so I can stop working entirely and gain even more free time. I truly don't understand why you'd want to continue with the current system where most of your life is wasted in mundane and work in a soul destroying environment.

    3. Re:I know I'm being selfish, but... by Anonymous Coward · · Score: 0

      I'm guessing you're a Gen Xer or Millennial, right?

    4. Re:I know I'm being selfish, but... by Baron_Yam · · Score: 1, Offtopic

      >the newest wonder-tech is generally always presumed to be 20 years away.

      I think one of the most disappointing parts of growing up was discovering that. And also that the most popular 'wonder-tech' was almost always bullshit from the very start. When I was a kid, it was flying cars, and unlocking psychic powers. Now it's flying cars and warp drives.

    5. Re:I know I'm being selfish, but... by Anonymous Coward · · Score: 1

      You just need to start publishing code snippets like crazy. Code snippets that have subtle flaws. Crowdsource some other programmers to vote them up as "fastest and best". AI uses them to write bad programs. Programmers don't lose their jobs. We just need to find a way to call these code snippets "sabots" so that the apocryphal rise of the term sabotage works for this case.

    6. Re:I know I'm being selfish, but... by drinkypoo · · Score: 1

      Can we just hold progress back another 40 years or so?

      Sure. Just fight MGI/UBI/COLA and mission accomplished.

      In an efficient world, the most talented people would produce the best stuff, and we would use it. In this world, everyone produces a lot of shit and only a few people get to use the best stuff because it is buried under feces.

      You don't have to worry about finding your place in the world if your place in the world isn't tied to your economic output. You can simply exist. There is more than enough to go around if we cut out the waste simply for the purpose of waste.

      --
      "You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
    7. Re:I know I'm being selfish, but... by Anonymous Coward · · Score: 0

      Except we have flying cars, just not affordable to the average consumer.

    8. Re:I know I'm being selfish, but... by Baron_Yam · · Score: 1

      From each according to their ability, to each according to their need.

      It's a beautiful thought, but unfortunately it is completely incompatible with human nature, which is evolution's response to reality. Resources are scarce and everyone's competing for them to ensure their genes survive. Part of that creates greed, envy, and hoarding... consumer culture.

      I'm sitting here conversing with people around the world, in a climate-controlled environment, with what's probably a pretty impressive understanding of my world (a world I've travelled) and universe given the limitations of my brain. I'm not worried about my next meal.

      Since I'm NOT worried about whether the Gods are going to punish me, not worried about whether I'll make a kill on the next hunt, or if the flint spear I have will be good enough for the job... I'd say our system's working out fairly well. There's always room for improvement, though.

    9. Re:I know I'm being selfish, but... by Baron_Yam · · Score: 1

      We've had flying cars for decades. The real dream is practical flying cars for the average person... which I don't see ever happening since they're fundamentally less practical than the non-flying variety.

    10. Re:I know I'm being selfish, but... by drinkypoo · · Score: 1

      Since I'm NOT worried about whether the Gods are going to punish me, not worried about whether I'll make a kill on the next hunt, or if the flint spear I have will be good enough for the job... I'd say our system's working out fairly well. There's always room for improvement, though.

      If you know where your next paycheck is coming from, if your basic needs are met and you can sleep without economic anxiety at night, You are the eight percent.

      Damned right there's room for improvement.

      --
      "You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
    11. Re:I know I'm being selfish, but... by Anonymous Coward · · Score: 0

      Don't worry. If Microsoft fire coders, code somewhere else. Competing with them will suddenly get easier. Automated systems tend to be slow, wasteful and bloated compared to what good coders write.

    12. Re: I know I'm being selfish, but... by Anonymous Coward · · Score: 0

      You just guessed that person was born between 1970 and 2010. That's more than 50% of the people alive currently. Your powers of deduction are indeed amazing!

    13. Re:I know I'm being selfish, but... by Anonymous Coward · · Score: 0

      Improvement ? Yes, but not much improvement. Only 13% of the worlds population can display FORMAL OPERATIONS behavior. The other 87% are "don't cares" ...fit only as G Khans meatgrinder.

    14. Re:I know I'm being selfish, but... by Anonymous Coward · · Score: 0

      The world of code is more like this:
      Some talented people produce good stuff. Being talented, they also choose good stuff for themselves.
      Some produce shit. shit don't sell itself, so it gets marketed by businesses that depend on it.

      So the sheep uses shit, and an elite of about 2% uses the good stuff. Which is ok if you're in the elite, you can laugh at the sheep bogged down with their bloatware & crashes. You boot up, log in and start working before they even get to the login prompt - you have more time for coffee.

      Occationally, one of the sheep rise above the herd, and can be recruited into the elite. Most of them firmly believe the marketing and stays bogged down. Don't care for them.

    15. Re: I know I'm being selfish, but... by Anonymous Coward · · Score: 0

      You are right about autonomous systems. But *intellegent* systems are moving toward being human caliber or better. There's a major difference between rote automation and analysis-driven development.

    16. Re:I know I'm being selfish, but... by ranton · · Score: 4, Insightful

      I don't understand posts like this. Why do you want to waste 40+ hours per week on a job that delivers little in the way of satisfaction or pleasure? Even if you're a well paid programmer, you're probably working on something that doesn't interest you, and therefore isn't particularly fun or rewarding. Wouldn't you rather have more free time to work on something that is of interest to you and that you believe would benefit other people? I worked as a programmer for a few years when I came out of university, but I concluded that my free time is far more valuable to me than a decent wage. I now work in a low paid part-time job, and while I have no money and no retirement plan, at least I can spend most of my time on projects that interest me.

      I don't understand posts like this. You assume everyone has the same life priorities you do, and get satisfaction or pleasure from the same things.

      My job isn't the perfect job I would create for myself if money was not a concern, but it is quite close. I get to solve complicated problems for companies and get to offload most of the grunt work to more junior staff members. While I may prefer to work on projects with more social impact than making financial transactions more efficient, I prefer providing well for my family more.

      My children will attend arguably the best public school district in our state (paid for by my egregious property taxes), they won't need loans for even Ivy League colleges if they so choose, will have the option to take unpaid internships starting in high school instead of needing a part time job to pay for a car, and spend their childhood surrounded by other affluent families who will become their initial professional network once they become adults.

      I'm not saying my priorities are better than yours, they are just different. So while I understand why you don't choose a similar life as I have, I still don't understand why you think your way is best for everyone.

      --
      -- All that is necessary for the triumph of evil is that good men do nothing. -- Edmund Burke
    17. Re:I know I'm being selfish, but... by drinkypoo · · Score: 3, Interesting

      The world of code is more like this:

      Software is inherently different to hardware, so you make a valid point. Though in a more perfect world, in which interoperability was forced by hook or by crook (so, if you don't use standards, your code repo gets raided until people can figure out how to interoperate with you) the software world itself would probably be more streamlined anyway as those who have built their existence on lock-in become eliminated.

      Arguably though, for software all that has to be done is protect open source and Free Software, because eventually it will destroy all other software. It has a tendency to surpass commercial software given enough time and attention, and it has a tendency to attract that attention in proportion to the need — as Linux has proven.

      --
      "You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
    18. Re: I know I'm being selfish, but... by Anonymous Coward · · Score: 0

      It doesn't matter "practical". If they can save you one hour per day, that's like 7% life extension, or 7% GDP growth.

    19. Re:I know I'm being selfish, but... by MTEK · · Score: 0

      You don't understand posts like that because you're a mature responsible adult who isn't putting yourself first.

    20. Re: I know I'm being selfish, but... by Altus · · Score: 1

      And the vast majority of the workforce. The fact that the poster asks for 40 years alone indicates a millennial. I don't plan on working for another 40 years if i can avoid it.

      --

      "In America, first you get the sugar, then you get the power, then you get the women..." -H. Simpson

    21. Re:I know I'm being selfish, but... by Anonymous Coward · · Score: 0

      Making financial transactions more transparent and efficient has a huge social impact. Even if it's for traders/brokers. So thanks to you and your work :)

    22. Re:I know I'm being selfish, but... by ranton · · Score: 1

      Making financial transactions more transparent and efficient has a huge social impact. Even if it's for traders/brokers. So thanks to you and your work :)

      It's true I do take pride in my current work which usually involves taking 1+ week paper processes and automating them into near real-time transactions. But on the flip side sometimes I am forced to hold back some efficiencies out of fear the financial advisors we serve will get scared of us automating them out of the loop. Baby steps I guess. I think the vast majority of financial advisors are not long for this world, but perhaps we need to keep stringing them along until Fin Tech companies make them nearly unnecessary.

      --
      -- All that is necessary for the triumph of evil is that good men do nothing. -- Edmund Burke
    23. Re:I know I'm being selfish, but... by sjames · · Score: 1

      Many people today have just replaced those fears with worrying if they'll be downsized, "is this a real job offer, or is it a recruiter collecting resumes, or are they just doing it so they can hire an H-1B?". Will I get enough work to pay the rent this month?

    24. Re:I know I'm being selfish, but... by sjames · · Score: 1

      If it's any comfort, once you get past the breathless headline it turns out it only works for problems that can be solved in 5 lines of code or so. The sort we give middle schoolers to solve in summer computer camp.

      I am also reminded of CASE tools. That was the big hype in the '90s that was supposed to allow non-technical managers to produce custom software based on a simple specification. It turns out, you have to be a programmer to be able to write a specification good enough to turn into software, but it's harder to write adequately for CASE tools than it is to just write the software.

      Of course, everything old is new again, so in the 2000's we got UML (not the virtualization UML) that was also supposed to generate code from an exact specification driven by XML. You remember XML, the magic glue that was supposed to magically make software inter-operate?. Well, that turned out to also be much harder than just writing the damned code. WooHoo, you can generate hello world in less than 3 days!

      But more to your point, yes. When people here and elsewhere say just go to school and get a new career, they're glossing over a great deal of mental anguish that will be suffered by millions, either because they're too immature to understand what it's like when you can't just run home to mom and dad or they believe it won't happen to them and they don't have enough empathy to feel for others.

      While I don't think programmers will really be hit by this for decades to come, some people are truly facing it right now. They did everything you're supposed to do, but the promised life isn't forthcoming. Unfortunately, it looks like fixing the problem won't get much traction until someone experiments with replacing judges and lawmakers with Watson.

    25. Re:I know I'm being selfish, but... by barc0001 · · Score: 1

      Don't worry so much. This stuff is going to gradually come along, not show up one day out of the blue which will allow many people to transition to different roles.

      On the practical side, firstly this is Microsoft so I'll be amazed if they have anything remotely usable in 10 years. Secondly, even after several years of iterations of this type of software being released it's still not going to be magic. We're not talking 24th century Star Trek computer AI here where you walk into the holodeck and tell the computer to make you a Victorian London simulation and it fills in everything from that one sentence.

      Take any software you can think of, even a simple phone app and describe to yourself what it does and the workflows and data flows involved. That's the bare minimum of what you'd need to define for this software, then it would take a stab at it, probably get an alarmingly large chunk of it wrong and then you'd need to go through an iterative process with it to fix everything it got wrong. Sounds rather like what programmers do now, but with a different set of tools, no?

    26. Re: I know I'm being selfish, but... by thinkwaitfast · · Score: 1

      A flying car for five people might seem practical. We have them now and they're called "airplanes" or "helicopters" if you can't them to do something fancy like deliver you to your rooftop hotel, but not so much so in a city of a million people. Not to mention the incredible loss in efficiency unless you are going the airplane route.

    27. Re:I know I'm being selfish, but... by Cajun+Hell · · Score: 1

      I now work in a low paid part-time job, and while I have no money and no retirement plan, at least I can spend most of my time on projects that interest me.

      You damned fool!!

      All you have to do, is work long, hard hours doing boring things for lots of money. Do this long enough, and then eventually you'll be able to retire. Then you'll finally have the time to spend on projects that interest you, with all that creative energy that old people are so well known for having.

      But noooo, you're doomed such that when you turn 72, you won't be able to afford retirement. You'll have nothing, except memories of a life wasted on things you enjoy, instead of being spent on responsibly preparing for your future (assuming you win the cointoss of fate, which reaps about half the population before retirement age).

      --
      "Believe me!" -- Donald Trump
    28. Re:I know I'm being selfish, but... by computational+super · · Score: 2

      That was my first thought, too - if this is successful, it may change the nature of "programming", but won't obviate the job classification. What it WILL do, which CASE tools, and UML, and DSL's, and "AngularJS" and every other miracle time-saving product did, is convince people who don't know how to use those tools that a) programming is easy-to-trivial and b) should be more or less a minimum-wage type of paper-pushing task. The reality is, all of these things actually end up making programming mentally harder, because you have to understand what those tools are doing on your behalf in order to troubleshoot them when they don't do what they should have done, but I don't see that resonating with the Illiterati that are running the show these days.

      --
      Proud neuron in the Slashdot hivemind since 2002.
    29. Re:I know I'm being selfish, but... by ConceptJunkie · · Score: 1

      And we know that while warp drive might be possible, it's not feasible and we probably won't be seeing it in our lifetimes.

      The technology advances are often far more gradual than we would expect (and hope), but no less transformative. Just think (if you're old enough) how life was before the Internet became ubiquitous. Has life radically changed since then? I wouldn't say it has, but many, many parts of our lives have changed radically, things we see and do every day, and mostly for the better.

      I think AI is going to be the same. It's not going to manifest in the ways we commonly expect (e.g., computers you can converse with, etc.), but will come about gradually, with software getting smarter and smarter until things we commonly see, say 10-20 years from now, would have to fall under the definition of "A.I." even though it happened gradually enough that it didn't occur to us... because we don't yet have HAL 9000.

      --
      You are in a maze of twisty little passages, all alike.
    30. Re:I know I'm being selfish, but... by Anonymous Coward · · Score: 0

      Was DeepCoder able to write the code for an improved DeepCoder2? If not you shouldn't worry, at least not yet.

    31. Re:I know I'm being selfish, but... by m00sh · · Score: 1

      I don't understand posts like this. Why do you want to waste 40+ hours per week on a job that delivers little in the way of satisfaction or pleasure? Even if you're a well paid programmer, you're probably working on something that doesn't interest you, and therefore isn't particularly fun or rewarding.

      Wouldn't you rather have more free time to work on something that is of interest to you and that you believe would benefit other people? I worked as a programmer for a few years when I came out of university, but I concluded that my free time is far more valuable to me than a decent wage. I now work in a low paid part-time job, and while I have no money and no retirement plan, at least I can spend most of my time on projects that interest me.

      I hope the pace of automation increases so I can stop working entirely and gain even more free time. I truly don't understand why you'd want to continue with the current system where most of your life is wasted in mundane and work in a soul destroying environment.

      What gives satisfaction and pleasure is not the work itself but the people you work with. So, even the most mundane jobs can be rewarding and pleasurable and the most interesting job miserable depending on the work environment and your co-workers.

    32. Re:I know I'm being selfish, but... by ChrisMaple · · Score: 1

      From each according to their ability, to each according to their need.

      It's an ugly and vicious idea; it's an attempt to enslave the competent to provide for those willing to fake disability. It's an inverted morality, where pus-filled sores become a mortgage on the lives of decent people.

      --
      Contribute to civilization: ari.aynrand.org/donate
    33. Re:I know I'm being selfish, but... by david_thornley · · Score: 1

      We have airplanes that can drive, which isn't quite the same thing.

      --
      "When you have eliminated the unacceptable, whatever is left, however improbable, must be the truthiness" - Holmes
    34. Re:I know I'm being selfish, but... by Anonymous Coward · · Score: 0

      It will be like Y2K all over again.

  5. Self defeating by CockMonster · · Score: 0

    They'll get it to a point where they can give this system a description of itself and it'll build itself and put them out of a job

    1. Re:Self defeating by Anonymous Coward · · Score: 1

      Only humans are so dumb as to willingly build machines that will put them out of work.

    2. Re:Self defeating by RavenLrD20k · · Score: 1, Flamebait

      The humans that develop these machines have the idea that if they build machines to do the mundane work for them, the humans will have more time to pursue labors of love. Unfortunately, the humans that think this way don't seem to care that the majority of other humans think that if you're not in a traditional 9-5 office job your value to society is null (yes I do realize that retail, service, and infrastructure building positions fall into this null category; this is deliberate).

    3. Re:Self defeating by Anonymous Coward · · Score: 1

      AI can take over most, if not all, aspects of those functions. What AI, automation, and sufficiently adapted robotics can do is return humanity to its "natural" state: 98% of the people living a subsistence life, while the remaining 2% live in relative luxury.

    4. Re:Self defeating by molarmass192 · · Score: 1

      Don't be so pessimistic! Once the AI figures out 98% of us are consuming system resources in a pseudo-zombie state, it'll code up the equivalent of a unix "kill" program to "release" those resources back to the system. I saw a documentary with Arnold Schwarzenegger that covered this topic a while back.

      --

      Good people do not need laws to tell them to act responsibly, while bad people will find a way around the laws-Plato
    5. Re:Self defeating by Altus · · Score: 1

      Like work is a biological imperative.

      --

      "In America, first you get the sugar, then you get the power, then you get the women..." -H. Simpson

  6. Who is this "Al" by OzPeter · · Score: 4, Funny

    Who is this "Al" and why does he keep trying to put everyone out of work? It seems like the best thing for the economy^w Human race would be to find Al and order a drone strike on him.

    ---

    And before all you ACs leap to eviscerate me for my inscrutable post, consider your glyphs.

    --
    I am Slashdot. Are you Slashdot as well?
    1. Re:Who is this "Al" by nitehawk214 · · Score: 1

      AI also controls the drones.

      --
      I'm a good cook. I'm a fantastic eater. - Steven Brust
    2. Re:Who is this "Al" by Anonymous Coward · · Score: 0

      Al Gore. He's trying to destroy the country along with Obama.

  7. For people who can't program by whoozwah · · Score: 2, Insightful

    This might be good at helping people who can't program get their ideas at least functional so they can't be shown as proof of concepts to actual programmers who can finesse it to make it proper.

    1. Re:For people who can't program by JBMcB · · Score: 2, Insightful

      +1

      You can't just glue blobs of code together and expect a decent application to come out of it, unless you are coding an extremely simple app that only automates a few things.

      Think about the UI, for example. If there were a magic formula to make a good UI, then computers would be automating it already, and every app would look great. Not so much.

      --
      My Other Computer Is A Data General Nova III.
    2. Re:For people who can't program by sinij · · Score: 0

      +1

      You can't just glue blobs of code together and expect a decent application to come out of it.

      Decent? Not really. Working? Absolutely.

      Anyone who ever maintained legacy code/systems can attest that this is how it is done all the time.

    3. Re:For people who can't program by Anonymous Coward · · Score: 0

      We has UI designing tools that allow children to create front-ends and basic functioning applications right now. Whether they look nice and pass UI design guidelines doesn't really matter. If unskilled people can do it today, 100 people can be doing it with 1 or 2 higher skilled bring them into line for business. Don't forget the vast majority of dev work is not sold to consumers, it's internal for several million of businesses.

      Backend stuff is already well on the way to be thrown together with limited skills. Just look how trivial it is to create a whole CRM or POS system with zero programming skills. The applications might not be ideal, or efficient, but that doesn't matter. They can be put together with ease without an army of analysts and devs fucking around being pedantic with specs for $estimated_completion_date + 18 months.

    4. Re:For people who can't program by redmid17 · · Score: 0

      We has UI designing tools that allow children to create front-ends and basic functioning applications right now. Whether they look nice and pass UI design guidelines doesn't really matter. If unskilled people can do it today, 100 people can be doing it with 1 or 2 higher skilled bring them into line for business. Don't forget the vast majority of dev work is not sold to consumers, it's internal for several million of businesses.

      Backend stuff is already well on the way to be thrown together with limited skills. Just look how trivial it is to create a whole CRM or POS system with zero programming skills. The applications might not be ideal, or efficient, but that doesn't matter. They can be put together with ease without an army of analysts and devs fucking around being pedantic with specs for $estimated_completion_date + 18 months.

      It absolutely fucking matters for any company with more than 1-2 people trying to use it, but hey what do I know. I've only been doing this for 10 years!

    5. Re:For people who can't program by Anonymous Coward · · Score: 0

      Just look how trivial it is to create a whole CRM or POS system with zero programming skills.

      Yeah, been there, used that, you spend a few minutes slapping something together, then a year longer than it would have taken you to code it by hand to actually make something useful--the devil is always in the details, and suits always forget the details because they're too self-important to look at anything other than the big picture or goal post.

    6. Re:For people who can't program by Anonymous Coward · · Score: 0

      Look at the cost of inefficient code vs an 8 core 3GHz CPU. You can feed that thing interpreted languages that generate other interpreted languages that generate bytecodes that generate opcodes that generate HAL instructions that twiddle the bits on the silicon all day long, and despite the indirection, it'll still run them fast enough for the $10/hr human standing at the cash register.

      All a system like that has to do is be efficient enough to keep up with the lowest common denominator.

      Think about it from management's point of view: if I spend an extra $100 on each cash register to outfit it with an 8 core processor, it will let me run inefficient generated bloated code fast enough to keep up with the best cashiers I can hire. I have to buy ten thousand registers, so that's a million dollars for the upgrade charge. A new cash register will last me 5 years, making the upgrade only $20/year * 10000 = $200000 per year. Do I still spend a million dollars a year on a cash register development team if I can have the AI spit me out the code we need in just a few seconds?

      As a bonus, the AI doesn't sass back about the code being inefficient or bloated.

    7. Re:For people who can't program by Anonymous Coward · · Score: 0

      Bugs scale linearly with the amount of bloat assuming static quality, but code quality has an exponential inverse relation to the amount of bloat, causing bugs per lines of code to skyrocket. I'm hanging around 1 bug per 1k-loc, and my projects are micro-optimized highly concurrent mutli-threaded with a lot of my own hand-rolled thread-sync customized for the current situation.

  8. This is pretty obvious. by Anonymous Coward · · Score: 0

    Just seeing the rate at which things are going and having a look at little things here and there, just connect the dots.

    Who would have bet on self-driving cars the next 20 years in 2010? And yet, we seem to be on the brink of it. Who would have bet on deep speech recognition, on spoken-to-spoken translation? There are still some trying to not see that.

    More on topic: look at this. Javascript de-obfuscation -- among other things finding reasonable variable names based on... corpus search "out there" on GitHub. We are closer to being replaced than we might like to realize.

    The 10^18 dollar question is now... how is our society supposed to look like after that? How would we want it to look like?

    Crickets.

    1. Re:This is pretty obvious. by Anonymous Coward · · Score: 0

      The 10^18 dollar question is now... how is our society supposed to look like after that? How would we want it to look like?

      Crickets.

      So, Skynet won't have to resort to violence. Just replace humans with robots and mankind will destroy itself from boredom...

    2. Re:This is pretty obvious. by Archtech · · Score: 1

      Who would have bet on self-driving cars the next 20 years in 2010? And yet, we seem to be on the brink of it.

      Who would bet on self-driving cars that work safely and reliably in the next 20 years right now? It's always easy to wheel out some dandy-looking prototype that works fairly well 99% of the time. But that remaining 1% is what hurts you. Given tens of millions of people hurtling about in "self-driving" cars, how many deaths, injuries and other harm does that tiny-sounding 1% represent? http://spectrum.ieee.org/cars-...

      How about facial recognition systems for airports and other public places that don't produce prohibitive numbers of false psoitives? How about speech recognition systems that get above that hard-to-improve-on 99% accuracy? (Sounds great until you work out that with 500-600 words per page, 99% accuracy means 5-6 errors per page - randomly distributed so you have to proof-read everything you have just so breezily dictated).

      --
      I am sure that there are many other solipsists out there.
    3. Re:This is pretty obvious. by fluffernutter · · Score: 1

      I still wouldn't bet on automated cars in the next 20 years. I invite anyone to prove me wrong, but they'll need to sit their vehicle out in my driveway in a blizzard over night and then in the morning I need it to work after clearing off the windows. I expect that it should pull out of my driveway and drive me to work safely even though everything is under snow.

      --
      Laws are rules for the court, but merely a bottom bar to hit for life. Think beyond laws in your actions always.
    4. Re:This is pretty obvious. by Njorthbiatr · · Score: 1

      We already have code that automates itself based on short descriptions. We call them high level languages. The resulting code is interpreted by our more concise instructions.

    5. Re:This is pretty obvious. by drinkypoo · · Score: 1

      Who would bet on self-driving cars that work safely and reliably in the next 20 years right now? It's always easy to wheel out some dandy-looking prototype that works fairly well 99% of the time. But that remaining 1% is what hurts you.

      The sad part is that we have had the technology for self-driving vehicles since the 1800s. It is called rail.

      --
      "You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
    6. Re:This is pretty obvious. by Anonymous Coward · · Score: 0

      > Just replace humans with robots and mankind will destroy itself from boredom...

      That would be the nice version. The more realistic these days: mankind will destroy 99% of itself from poverty, the last 1% will follow from boredom and impotence. We're getting the first part started now...

    7. Re:This is pretty obvious. by religionofpeas · · Score: 1

      99% accuracy means 5-6 errors per page - randomly distributed so you have to proof-read everything you have just so breezily dictated

      How many humans can take real time dictations with a lower error rate ?

    8. Re:This is pretty obvious. by thinkwaitfast · · Score: 2

      We had self diving cars in the 1980's, a few of which drove all the way across the US. I think they go back to the world's fair in the 1930's. The problem is being able to handle all scenarios that might arise like a police officer standing in the road giving you specific directions.

    9. Re:This is pretty obvious. by thinkwaitfast · · Score: 1

      Poverty has always existed and mankind seems to be doing well at over 7 billion people.

  9. AI Snippets... by Daerath · · Score: 5, Insightful

    It really won't. So instead of having to manually code it, you need the exact same type of person to specify requirements with as much precision and detail as possible. An act they were already doing while coding. They will have to do this repeatedly while working out the bugs in their requirements (aka, code), and probably still needing to manually fix things here and there. So like, thanks for AI Snippets?

    1. Re:AI Snippets... by Anonymous Coward · · Score: 1

      I partially disagree.
      What this will do is make imperative languages more declarative. Instead of describing how you want to do it, you describe what you want to have happened.
      This flows nicely into TDD, allowing you to 'only write' tests.

      However, this does not create proper data structures, design, etc. Those still need to be thought out (for now).
      So you have to define your classes, and their functionality, and not so much their innards
      (for at some moment, your tests will become too complex since your unit under test is too complex)

    2. Re:AI Snippets... by TheRaven64 · · Score: 1

      In this respect, it's not really any different from stuff genetic algorithms have been doing for decades. If you have a set of executable tests that can tell if the algorithm is working correctly, then you can evolve something that will pass the tests. Of course, you have absolutely no idea how it will behave on inputs not covered by your tests.

      --
      I am TheRaven on Soylent News
    3. Re:AI Snippets... by avandesande · · Score: 1

      Remember all the drag and drop GUI tools that were supposed to do this? Turns out it's easier just to code it.

      --
      love is just extroverted narcissism
    4. Re:AI Snippets... by Anonymous Coward · · Score: 0

      It'll work fine. Until the customer wants so and so to do this or that and then the programmer will tell them it can't do that...
      because I'm programming with duplo-blocks and you want me to do something at the atomic level.

    5. Re:AI Snippets... by Anonymous Coward · · Score: 0

      You are probably correct. This will work as well as Cobol did back when people thought that the reason an ordinary person could not program was because they couldn't do it in English. Turned out that it wasn't the proble...

    6. Re:AI Snippets... by Nethemas+the+Great · · Score: 1

      Until engineer/developer level abstract thought is in the hands of AI I wouldn't worry. The best current and foreseeable future AI can do is scrape the detritus off the bottom of the talent pool; the ones essentially stitching code snippets together themselves to service simple requirements, e.g. web sites and CRUDs. This admittedly encompasses a significant amount of business needs, but is by no means the majority.

      --
      Two of my imaginary friends reproduced once ... with negative results.
    7. Re:AI Snippets... by jlowery · · Score: 1

      Yes, I helped write one of those. Turns out your average person is a poor data modeler (normalization) and type definer (classes). I don't think functional programming is going to help here, but it might.

      What is needed in an analyst is the ability to 1) ask the right questions; 2) find the right answers; 3) identify entities; 4) eliminate repetition; 5) determine containment hierarchy and ownership (strong/weak entities); 6) identify and mitigate error conditions

      And that's just a start. Once everything is nailed down analysis-wise, then the coding part is easy.

      --
      If you post it, they will read.
  10. Coding isn't the hard part by Anonymous Coward · · Score: 0

    That's why they're called code monkeys. The hard part is figuring out efficient ways to achieve your goals. This is just the next abstraction layer for programming. Machine code got us so far, then compiled languages, now we're moving on to the next level.

  11. Yes... more crappy code by Vapula · · Score: 2, Insightful

    Given the long history of crappy code from Microsoft, it don't look so nice... more crappy unoptimized code...

    1. Re:Yes... more crappy code by Anonymous Coward · · Score: 0

      I've seen code - source code - of many things from different software companies and Microsoft is actually some of the best; at least the code I saw in the late 80s and early 90s. Compared to some of the shit I saw at IBM, NCR, and a couple of other places and comparing their current stuff to other companies like Apple (OSX is getting shittier every release), Oracle/Java and Google-Android, they are goddamn awesome. And don't get me started on the amateur hour with the Linux kernel and GNU's crap.

      And of course Yahoo! hires their people from the special ed classes from the inner city of Oakland.

    2. Re:Yes... more crappy code by Anonymous Coward · · Score: 0, Interesting

      Microsoft documentation of .NET was written by a bunch of people from India who didn't have a good grasp of English and didn't particularly care for their jobs. You can practically feel the anger dripping from every sentence.

    3. Re:Yes... more crappy code by Anonymous Coward · · Score: 0

      They do automatically generate shitty HTML.

    4. Re:Yes... more crappy code by Anonymous Coward · · Score: 0

      Provided there are still folks working in tech, at least they won't need to be worried about an H1B taking their job in the future. The H1B will have to worry about AI taking their job. And, from that, the cheap labor bubble will be popped and countless human's standard of living will deflate back to where it was before the cheap labor fiasco began many years ago.

    5. Re:Yes... more crappy code by Anonymous Coward · · Score: 0

      It should be named: GIGO (which stands for: Garbage in, garbage out).

    6. Re:Yes... more crappy code by Anonymous Coward · · Score: 0

      They are trying to put crappy programmers who worked on crappy software like Vista out of work by putting in more crappy programmers on a new crappy AI code generator, not my business :)

  12. hipster supercomputers by Anonymous Coward · · Score: 0

    using proprietary data sources like hard drives and emails

  13. Oblig. XKCD by Anonymous Coward · · Score: 1
    1. Re:Oblig. XKCD by OzPeter · · Score: 5, Interesting

      https://xkcd.com/1185/

      OT but I believe that XKCD has reached the level where it is the embodiment of the old joke where the prisoners (or whoever) sit around telling jokes by reciting the joke's index number. Sometimes you don't even have to look at the XKCD cartoon, you just look at the number in the link and go "yep, that's applicable". (Although in this case I had to look).

      --
      I am Slashdot. Are you Slashdot as well?
    2. Re:Oblig. XKCD by Anonymous Coward · · Score: 0

      https://xkcd.com/1185/

      OT but I believe that XKCD has reached the level where it is the embodiment of the old joke where the prisoners (or whoever) sit around telling jokes by reciting the joke's index number. Sometimes you don't even have to look at the XKCD cartoon, you just look at the number in the link and go "yep, that's applicable". (Although in this case I had to look).

      GP here.

      I thought long trying to find a fitting XKCD as a comeback but failed. Resorting to the archive I managed to squeeze out this one: https://xkcd.com/307/

      Another one I think you have to look up. (I'm sure there are better ones though).

    3. Re:Oblig. XKCD by Qzukk · · Score: 1

      Personally, I think the phenomenon is closer to https://xkcd.com/902/ myself.

      --
      If I have been able to see further than others, it is because I bought a pair of binoculars.
    4. Re:Oblig. XKCD by Anonymous Coward · · Score: 0

      Personally, I think the phenomenon is closer to https://xkcd.com/902/ myself.

      I think it was that one I subconsciously was looking for.

  14. Real coders? by JaredOfEuropa · · Score: 4, Insightful

    piecing together lines of code taken from existing software -- just like a programmer might.

    Ehm, right. Because all coders do all day is cut & paste code snippets from StackOverflow. And those snippets are placed there by the tooth fairy?

    The idea isn't exactly new, and there have been some attempts in the past to build code generators which string together finely-grained mini routines from specifications into a working bit of software. But those have proved to be problematic, especially when it comes to maintenance, change requests, and multi-threading. Keep in mind that today's software engineering isn't straightforward input -> process -> output anymore; even the simplest apps have to deal with asynchronous stuff in UI, database and networking code, and the resulting problems aren't solved simply by piecing together the right code snippets. Not saying that there will never be an "AI" that is able to code, and research like this is pretty interesting, but in this form this isn't job threatening in the least.

    --
    If construction was anything like programming, an incorrectly fitted lock would bring down the entire building...
    1. Re:Real coders? by AmiMoJo · · Score: 4, Informative

      People don't know what they want. Part of a developer's job is figuring out what the client really needs from a vague and typically clueless spec. Since that involves looking at how things are already being done manually or with other software, talking to people, making suggestions, building prototypes etc. it is hard to see how an AI could have much success at it.

      --
      const int one = 65536; (Silvermoon, Texture.cs)
      SJW, n: "Someone I don't like, and by the way I'm a fuckwit" - AC
    2. Re:Real coders? by Anonymous Coward · · Score: 0

      Guess what else pieces together code snippets to form a program? A compiler!!! Do you really think that C call to printf translates directly to a single assembler instruction? Nope, it translates into a series of assembler instructions (aka: "code snippet").

    3. Re:Real coders? by Anonymous Coward · · Score: 0

      I could see this being profoundly useful for prototyping a function or class where the logic is purely procedural.

    4. Re:Real coders? by Drethon · · Score: 1

      Yeah, this is why I said the AI is not replacing my job. My job isn't writing code most of the day, most of my job is taking the specification I was provided, talking to the people who provided it, and turning it into something that wont collapse under its own weight

    5. Re:Real coders? by kosmonaut+pirx · · Score: 1

      I just imagined DeepCode to flood Stack Overflow and similar sites with postings like: "I need to code ERP app! Howto do it? Source code plz!"... BR Kosmo

    6. Re:Real coders? by Anonymous Coward · · Score: 0

      People don't know what they want. Part of a developer's job is figuring out what the client really needs from a vague and typically clueless spec. Since that involves looking at how things are already being done manually or with other software, talking to people, making suggestions, building prototypes etc. it is hard to see how an AI could have much success at it.

      Agreed. Of course if the people had decent requirements in the first place, then our job would be greatly simplified. Decent does not have to mean fancy enough to run through some algorithm, but they should at least have enough detail that a reasonably intelligent human could figure it out, more or less. I've got a current task to replace software made by a third party company and they so far are balking at delivering the output files of the existing code so we can even look at them, apparently concerned that even looking at those would somehow taint us. (That nice stack of requirements we would like is also pretty vague.)

      In short no magical algorithmic coder is going to replace people anytime soon, but it might be good for some of the stuff that is outsourced, maybe...

    7. Re:Real coders? by Anonymous Coward · · Score: 0

      code generators which string together finely-grained mini routines from specifications into a working bit of software

      Aren't you just talking about Java now?

    8. Re: Real coders? by hackwrench · · Score: 1

      Except now the specification can be the code. Then the client can figure out for themselves how close they are to what they want and rephrase the specification.

    9. Re: Real coders? by Drethon · · Score: 1

      I haven't seen many that are very good at that. Providing prototypes and asking how it should really be done doesn't seem to result very well. I get much better feedback from clients when I ask them, you haven't said what the software should do under these conditions. So most of the time is spent finding the gaps in the specification for them and ask how to fill it in, rather than giving them the prototype and asking how to improve.

    10. Re:Real coders? by Anonymous Coward · · Score: 0

      That is the RA's and the architect's job, not the developer's job

    11. Re:Real coders? by Anonymous Coward · · Score: 0

      Even the architect is going to give ambiguous requirements. Code is nothing more than a set of unambiguous requirements. As a programmer, if someone hands me a set of unambiguous requirements, I have nothing to do. All other requirements, I have to read between the lines and make judgement calls.

  15. Coding requirements by marciot · · Score: 4, Insightful

    Isn't writing out requirements in a way a computer can understand the essence of any programming language that has ever existed? So how is this any different? To truly get rid of programmers, the machine would need to look at the world, figure out what the problems were, figure out the requirements to solve it on it's own, and solve it. Then, yes, would programmers be able to look at kitten pictures all day.

    1. Re:Coding requirements by Baron_Yam · · Score: 1

      >Isn't writing out requirements in a way a computer can understand the essence of any programming language that has ever existed? So how is this any different?

      It would seem this is another layer of abstraction that will make programming easier.

      I would guess that there will still be a language to learn so you can give instructions to the computer and get optimal results. If they do it correctly, it's possible there will be a whole lot of details a human will no longer have to track... except when you have to debug the code, of course.

    2. Re:Coding requirements by Tough+Love · · Score: 1

      Forget coding, nobody actually needs to complete this project to the pointer where it can code, it only needs to get to the point where it can write research proposals.

      --
      When all you have is a hammer, every problem starts to look like a thumb.
    3. Re:Coding requirements by Anonymous Coward · · Score: 0

      But that is what people are afraid of: the AI will look at the world and figure out what the problems are, then proceed to remove the problems. Of course most problems are caused by people. Hence, Skynet.

    4. Re:Coding requirements by Anonymous Coward · · Score: 0

      It'll probably put a lot of worthless stuff in with it. By the time it gives you a working product, it'll have a lot of bugs and take a really long time at each task. Might be better than having to wait while a project is built, and maybe if you give programmers the code, they can pare it down and get rid of the inefficiencies. It's definitely not going to have any self awareness, and it's not going to know when it does something completely nonsensical.

    5. Re:Coding requirements by Black+Parrot · · Score: 1

      Using AI to convert specs to code has been an active research area for a long time. But to essentially echo your point, specs that are specific enough to allow this are about the same complexity and require about the same amount of detail as writing the program.

      And in my limited industry experience, we worked more as hacks than as spec implementers anyway. Typically we wrote what someone asked for, then waited for them to come back and say that wasn't really what they wanted. Iterate until you move to the next job.

      --
      Sheesh, evil *and* a jerk. -- Jade
    6. Re:Coding requirements by Anonymous Coward · · Score: 0

      Then, yes, would programmers be able to look at kitten pictures all day.

      First they need to un-jumble their English.

    7. Re:Coding requirements by wasteoid · · Score: 2

      "Then, yes, would programmers be able to look at kitten pictures all day."

      I see what you did there.

    8. Re: Coding requirements by HannethCom · · Score: 1

      Actually, more than likely the AI will determine that something senseless that is a requirement is not needed and will remove it from the program making the program useless to the person wanting the program.

      --
      Microsoft, Apple, Google, Amazon what's the difference? All steal money from devs and control with walled gardens.
    9. Re: Coding requirements by Anonymous Coward · · Score: 0

      My company wrote software to analyze requirements in the 80's. It was part of the formal verification system. It also generated code directly from requirements. I was the first person to use it in delivered production code circa 1994. Note this wasn't used to put programmers out of work, but because the software was so complex nobody could understand it all and it had to follow a literal wall of book of regulations. Over 95% of the code was executed every second, so it wasn't all sitting around waiting for the next time a leap year landed on a Tuesday. We called it a tool and nobody considered it AI. There were different groups for that.

    10. Re:Coding requirements by avandesande · · Score: 1

      Or maybe the computer will decide it is easier to kill off the human race with a thermonuclear war than finish the project.

      --
      love is just extroverted narcissism
    11. Re:Coding requirements by Anonymous Coward · · Score: 0

      more as hacks than as spec implementers

      This was required reading at my organization.

    12. Re:Coding requirements by Nethemas+the+Great · · Score: 1

      It would seem this is another layer of abstraction that will make programming easier.

      It might, but I wouldn't hold your breath. Code snippets are very much like design-patterns. The notion of design-patterns were supposed to be step along that path wherein they would eventually evolve into idiomatic instructions for tools capable of self-configuring boilerplate components. Yet while they've proved useful as communication idioms between humans, that about all the mileage anyone's been able to get out of them. The necessary ability to think abstractly remains solidly in the hands of humans.

      --
      Two of my imaginary friends reproduced once ... with negative results.
    13. Re:Coding requirements by m00sh · · Score: 1

      Isn't writing out requirements in a way a computer can understand the essence of any programming language that has ever existed? So how is this any different? To truly get rid of programmers, the machine would need to look at the world, figure out what the problems were, figure out the requirements to solve it on it's own, and solve it. Then, yes, would programmers be able to look at kitten pictures all day.

      The problem before that humans were needed to convert human language requirements into computer code. It was something only humans could do.

      Now with the advent of deep learning, perhaps computers can do it.

  16. dealing with the human element by sheramil · · Score: 4, Funny
    have you ever seen any of those hilarious blogs by artists and graphic designers who undertake commissions from people ignorant of, well, it seems ignorant of everything? the sort of people who ask you to take a full color photo of the finished work and fax it to them and then complain that they can't load it into microsoft word? "No, that blue is the wrong blue, we wanted a different blue. I don't know! A different blue to that one!"

    automated software production? this. times a million.

    1. Re:dealing with the human element by Anonymous Coward · · Score: 0

      No problem, since AI will control all thought. See the article on Google removing offensive comments.

    2. Re:dealing with the human element by thinkwaitfast · · Score: 1
  17. specifications by Anonymous Coward · · Score: 2, Insightful

    Unless your a programmer, I don't think you can make specifications complete and detailed enough for this to work. I've heard many customers say "always do this" and come back later and say well except when that happens.

    1. Re:specifications by HiThere · · Score: 1

      That's one valid point. My real problem with it is that I've seen this promised before, and the things delivered were exceptionally unimpressive. In fact, the closest I've seen to something that does this so far was never touted under that rubric....the spreadsheet.

      OTOH, back in the days of the Apple ][+ there was this program called "The Last One", touted as "The last program you'll ever need to buy!". It quickly sank without a trace.

      All that said, a lot of what programmers do *is* cut an paste...only we call it linking in libraries, and we already have automated tools to do it.

      And *that* said, I can easily imagine certain areas in which programmers are currently working being automated. Certainly there are areas where I used to work that have been automated. It's been a long time since I had to write a hash table, e.g., or a doubly linked list, or... well, lots of things. Expect the process to continue, and probably to speed up a bit. I don't expect the genuine automatic programmer before 2025 at the earliest. ... And even then I expect there will be areas it can't really handle....but I consider that requiring all children learn to code to be a really stupid move. Get them to think critically, OK. That would be a good thing, if you can figure out how to do it.

      --

      I think we've pushed this "anyone can grow up to be president" thing too far.
  18. Who owns it? by Anonymous Coward · · Score: 1

    The real questions are "Who owns the code used?" and "Who owns the final code product generated?"

    1. Re:Who owns it? by Daerath · · Score: 0

      Very good point. If/When this becomes more than a research project you'll probably see entire snippet databases, each with licensing requirements similar to graphics engines (free if less than X revenue, y% for every dollar over that number), flat fees, annual subscriptions on the database free to use whatever you make), etc.

    2. Re:Who owns it? by Anonymous Coward · · Score: 0

      Ha. I'm going to enjoy it if this completely destroys the patent system. Trying to make a living off "intellectual property" is a dying game.

  19. Re:Self defeating (loop) by Anonymous Coward · · Score: 0

    After which the new system will build something and put itself out of a job... each new creation will obsolete it's own maker; ad nauseam.

  20. Maintenance by inhuman_4 · · Score: 2

    I can't wait to try and maintain code generated by pasting together random code snippets. And people thought old COBOL mainframe code was expensive to keep going, well hold on to your hats.

    1. Re:Maintenance by Anonymous Coward · · Score: 0

      > I can't wait to try and maintain code generated by pasting together random code snippets.

      I'm doing that all the time. Have you had a look at the last PHP project around you (pro tip: a thing done here at $COMPANY which had the job to resend some mails to another recipient with a delay of one hour: 700 files, about 8500 lines of code). Almost sure that the developer (who wasn't available anymore for questions, alas) and his/her IDE functioned as a kind of mixed-intelligence, write only code generator. I told my boss that I was ready to touch that thing just *once*.

      Another example: some Java code which had to parse XML: the IDE (don't force me to name that: I'd fall into expletives) *generated the Java code from the XML schema*. The generated code was then checked into the version control system. Again, a mixed-intelligence entity was part of the production process.

      Know what? I can't wait that we are replaced. We're too stupid.

    2. Re:Maintenance by Kergan · · Score: 2

      Just have the AI do a full blown rewrite.

    3. Re:Maintenance by painandgreed · · Score: 1

      Just have the AI do a full blown rewrite.

      Essentially this. I bet they are just coming up with a new "computer lanugage" that they hope that will be writable by non-programers, perhaps even using drag and drop icons. This will be just like all their forms software they seek to have used in Sharepoint and the like. Maintenance and upgrades will probably just mean changing the original input and recompiling (or whatever is going on in the background).

    4. Re:Maintenance by grep+-v+'.*'+* · · Score: 1

      I can't wait to try and maintain code generated by pasting together random code snippets. And people thought old COBOL mainframe code was expensive to keep going, well hold on to your hats.

      Just have the AI do a full blown rewrite.

      Rewrite? Hell, if it's so intelligent have the AI clone itself and then perform the actual task to start with.

      The Only Problem. That, or the clones making their own clones.

      --
      If the universe is someone's simulation -- does that mean the stars are just stuck pixels?
    5. Re:Maintenance by Anonymous Coward · · Score: 0

      I'm also surprised that no one's really talking about code security. Every week it seems a new security flaw is found in some Microsoft software. A flaw in the "snippet library" will just get replicated into projects everywhere, no human eye to see it. And once it's discovered by a security expert, it will appear everywhere. Just like the case of the flaw discovered in glibc last year. Except on a larger scale, perhaps.

  21. That is great. by vyvepe · · Score: 4, Funny

    I'm looking forward when Microsoft uses this AI to code Windows OS.
    It will be also the time when Linux will finally take over desktop :)

    1. Re:That is great. by vyvepe · · Score: 1

      On the other side, it will be also the time when managers will need to argue with their AIs about what to do. That can turn out to be kid of funny.

    2. Re:That is great. by Anonymous Coward · · Score: 0

      What makes you think it isn't already?
      It sure would explain a lot.

    3. Re:That is great. by Anonymous Coward · · Score: 0

      I think it already is.

    4. Re:That is great. by Hydrian · · Score: 1

      I'm looking forward when Microsoft uses this AI to code Windows OS.

      AI gives them back BSD code.

      --
      No good deed goes unpunished.
    5. Re:That is great. by Anonymous Coward · · Score: 0

      You might be on to something. I suspect they might've been using it internally already--how else do you explain Windows 10?

    6. Re:That is great. by Anonymous Coward · · Score: 0

      I'm looking at the big picture myself - when Microsoft goes bankrupt because of this simply because people will go to the AI and say "Yes I would like an OS binary compatible with the latest Windows OS but without all the spying and DRM added in."

  22. This has been threatened for over 40 years now by walterbyrd · · Score: 1

    Probably longer. But I remember such articles in 1976.

    Getting hard to take it seriously.

  23. Wanted! by sycodon · · Score: 0, Troll

    Wanted. Outstanding Candidates with at least 3 years experience with DeepCoder. Must be able to show past work experience successfully writing DeepCoder specifications, implementing and maintaining the results.

    This position is H1-B eligible.

    --
    When Fascism comes to America, it will call itself Anti-Fascism, and tell you to give up your guns.
    1. Re:Wanted! by Anonymous Coward · · Score: 2, Insightful

      More likely HR will expect 10 years of Deep Coder experience the moment businesses start using it.

    2. Re:Wanted! by Hydrian · · Score: 1

      Deepcode bots are eligible.
       

      --
      No good deed goes unpunished.
  24. Put coders in India out of the a job by Anonymous Coward · · Score: 1

    Oh no, and India was doing so well growing its economy...

  25. Because it worked so well in 1981 by Megane · · Score: 4, Insightful

    The Last One (software)

    As someone else said, it sounds like it mimics the type of programmer who spends all his time gluging together copypasta code snippets from StackOverflow without understanding them. So it will clearly put the hack (in the context of "hack writer") contractors from India with fake degrees out of a job first. The kind of coding I do doesn't have snippets to put together.

    --
    #naabhaprzrag, #sverubfr-000, #agi-fcbafberq, negvpyr[pynff*=' negvpyr-ary-'] { qvfcynl: abar !vzcbegnag; }
    1. Re:Because it worked so well in 1981 by Black+Parrot · · Score: 1

      The Last One (software)

      As someone else said, it sounds like it mimics the type of programmer who spends all his time gluging together copypasta code snippets from StackOverflow without understanding them

      Perfect problem for a genetic algorithm.

      --
      Sheesh, evil *and* a jerk. -- Jade
    2. Re:Because it worked so well in 1981 by edtice1559 · · Score: 1

      The fact that people are gluing code together from StackOverflow is what indicates the need for this type of solution. As has been mentioned in previous comments, the real work that (good) programmers do is to understand the nuances of the problem that they are trying to solve. You can get an 80% solution very easily. It just won't handle the corner cases correctly. And when you go to handle those, you spend a lot of time thinking an discussing about what the "correct" behavior should be. But once you've decided on the correct behavior and that, in order to implement it, you need data from three different sources, why in the world would you want to recreate the code to retrieve that data? It's more likely to be buggy than code that you copy and paste. The fact that you're copying a large chunk of code indicates that the languages aren't expressive enough. Right now we've been making up for that by having IDEs that generate a lot of code and/or copying existing swaths. I'm not saying that this is the right solution, just that it is trying to solve an important problem. Now sure if you are developing firmware for a networking switch or other low-level tasks, copying a bunch of code is probably a recipe for disaster. But for many applications, the languages are really lacking.

    3. Re:Because it worked so well in 1981 by Anonymous Coward · · Score: 0

      Indeed, we've made no progress since 1981 !

      You genius, You !!

  26. All its good for is helping math students cheat by Anonymous Coward · · Score: 0

    Read the paper. The example programs are effectively the same as the types of math problems we give students who haven't even left high school yet. And it doesn't even "show the work", so really, its still useless.

  27. Re:Kill the H1b visa people by Anonymous Coward · · Score: 2, Funny

    Don't forget we need to build a 2000-mile wall on the Mexican border, and stop all Muslims from entering the country.

    Taking those tough but common sense steps will protect your job from automation.

  28. I want to see the results first by johanw · · Score: 3, Interesting

    before I believe it will work.

    I worked once on a very large project that tried to do something similar for the Dutch tax service: put the (ever changing) tax regulations in some form of specification language, and compile that to C# code. I was a contractor for some time on that project. After a 160 milion EUR budget overflow and some questions about it in the parliament the project was significantly reduced in its ambitions.

    1. Re:I want to see the results first by Anonymous Coward · · Score: 0

      I can imagine a problem codifying the interpretation of the tax regulations practiced by the tax authorities and the case law related to any appeals. Reality is hard.

    2. Re:I want to see the results first by Kjella · · Score: 1

      I worked once on a very large project that tried to do something similar for the Dutch tax service: put the (ever changing) tax regulations in some form of specification language, and compile that to C# code. I was a contractor for some time on that project. After a 160 milion EUR budget overflow and some questions about it in the parliament the project was significantly reduced in its ambitions.

      Oddly enough this is one of those cases that should have worked. I mean if I have a tax filling all the rules and requirements should be specified and I should be able to follow the tax calculation step by step, there shouldn't be any unspoken or ambigious requirements about what applies and in what order to evaluate it. There is only supposed to be one correct answer. What it probably means is that the tax code is so complex nobody actually understands it and that whatever the actual code does is the de facto tax system, regardless of whether it matches the specifications.

      --
      Live today, because you never know what tomorrow brings
    3. Re:I want to see the results first by phantomfive · · Score: 1

      The problem (I would guess) is imprecision in how words match to reality. For example, you could say, "Tax employment income at 28%, and capital gains at 15%." It's a clear rule, but then what about royalties from a book? Are those employment income or capital gains? And that's a simple problem, then you get into depreciation rules, and what counts as a primary residency for purposes of a tax shelter, and the difference between a contractor and an employee, and it all gets so vague.

      Of course, its' also possible that the Dutch contracted with Oracle or SAP and that's why their project failed.

      --
      "First they came for the slanderers and i said nothing."
  29. Anyone remember assembler? by gti_guy · · Score: 1

    Nothing new or unexpected here. This is just another abstraction from machine language. Expect bigger, less efficient & less secure code.... same as we have each time we add another abstraction layer on.

  30. Don't worry by Anonymous+Brave+Guy · · Score: 5, Funny

    Changing requirements aren't a problem. All you need is to define a language where they can be specified precisely, and hire someone who can translate your real world requirements into that language. Once you've got those, you can still do away with programmers because the new magic code generation tools will do everything else for you.

    --
    If you disagree, post your argument. (-1, Overrated) isn't your personal censorship tool for views you don't like.
    1. Re:Don't worry by Tough+Love · · Score: 1

      It's even easier than that. Just specify that requirements must be delivered in the form of functioning code.

      --
      When all you have is a hammer, every problem starts to look like a thumb.
    2. Re:Don't worry by Anonymous+Brave+Guy · · Score: 2

      Ah, cunning! So it's like my idea, but now you don't even have to hire someone to do the translation, because your boss/customer already did that bit. Nice. Definitely no programmers involved anywhere now!

      --
      If you disagree, post your argument. (-1, Overrated) isn't your personal censorship tool for views you don't like.
    3. Re:Don't worry by Anonymous Coward · · Score: 1

      So basically a DSL https://en.wikipedia.org/wiki/....

    4. Re:Don't worry by ranton · · Score: 4, Insightful

      Changing requirements aren't a problem. All you need is to define a language where they can be specified precisely, and hire someone who can translate your real world requirements into that language. Once you've got those, you can still do away with programmers because the new magic code generation tools will do everything else for you.

      Sounds like you are describing a compiler.

      Just as programming tools today are much better than those used in the 80s and 90s, the tools used by programmers a decade or two from now will make developers far more productive. IMHO we have already reached a point where the more valuable work is in requirements elicitation and architectural design as opposed to writing code. I imagine in 20 years writing code will be like being a CAD operator today in both the level of training required and pay scale.

      --
      -- All that is necessary for the triumph of evil is that good men do nothing. -- Edmund Burke
    5. Re:Don't worry by Anonymous+Brave+Guy · · Score: 1

      Sounds like you are describing a compiler.

      #thatsthejoke

      --
      If you disagree, post your argument. (-1, Overrated) isn't your personal censorship tool for views you don't like.
    6. Re:Don't worry by Anonymous Coward · · Score: 0

      Holy crap. Does anyone see skynet in this? Self improving code that improves it's own code, then it's improves it's own code, then improves it's own code...

    7. Re:Don't worry by mnemotronic · · Score: 3, Interesting

      Of course there are many requirements specification languages. I doubt if any of them cover tribal knowledge or situations where the people being relied on to provide the specifications, sensing that they were about to be automated out of a job, supplied incomplete or inaccurate data. In this case, the Microsoft tool would be demonstrating GIGO -- Garbage In, Garbage Out. On the other hand it would do it much faster and more efficiently that a team of developers who, if they were diligent, who start asking questions about inconsistencies in the spec.

      --
      The Russians have won. They have made the world a cesspool of distrust, greed, fear and hate.
    8. Re:Don't worry by thinkwaitfast · · Score: 4, Informative

      Yeah, my company has been working on this for over twenty years and is probably a world leader in the field and has been used to develop systems for as long as I've been around with it. It's the first I've heard anyone call it AI. I think it's due to the labeling of what's considered intelligent being dropped.

    9. Re:Don't worry by computational+super · · Score: 1

      Whoosh!

      --
      Proud neuron in the Slashdot hivemind since 2002.
    10. Re:Don't worry by Darinbob · · Score: 1

      Deliver in the form of functioning code written in a functional language so that there is no ambiguity.

    11. Re:Don't worry by Anonymous Coward · · Score: 0

      In the current times, there's one requirement for AI:

      "Write software to make lots of money"

      Of course I'm sure the AI engine will response with: 'running app to rob a bank'.

    12. Re:Don't worry by david_thornley · · Score: 2

      Maybe we could define a COmmon Business-Oriented Language to do this in.

      --
      "When you have eliminated the unacceptable, whatever is left, however improbable, must be the truthiness" - Holmes
    13. Re:Don't worry by lsatenstein · · Score: 1

      Changing requirements aren't a problem. All you need is to define a language where they can be specified precisely, and hire someone who can translate your real world requirements into that language. Once you've got those, you can still do away with programmers because the new magic code generation tools will do everything else for you.

      The translation is just a different form of coding. It is similar to the instruction set on a CPU. Someone coded the instruction set, now we work at a much higher level.
      What may come from the exercise is more precise code, though not the most performing code.

      --
      Leslie Satenstein Montreal Quebec Canada
    14. Re:Don't worry by Anonymous Coward · · Score: 0

      When they find an AI that can debug, I'll start to worry.

    15. Re:Don't worry by MooseMiester · · Score: 1

      I haven't seen a project with proper requirements ever since I left the waterfall world of plodding corporate I.T. and joined the unicorn land of Digital Interactive.

      I'd love to see this thing up against my clients, who give requirements like "It just doesn't pop for me, can we make it more awesome?" or "How much to make a more useful KPI screen?" or the ever popular "I want a website/mobile app/ecomm platform that looks just like this one, but has our branding"

      --
      Murphy was an optimist
    16. Re:Don't worry by ChoosyBeggar · · Score: 1

      That makes me feel better, having talked about this for years, typically receiving snickers and rolled eyes in response.

    17. Re:Don't worry by Anonymous Coward · · Score: 0

      The less semantics in the business plan, the less semantics in the requirements for software supporting and implementing that business plan.

  31. This is different from the status quo how? by 0xdeadbeef · · Score: 3, Insightful

    The people who call themselves "coders" already do little more than paste together half-assed open source projects they find on github and snippets copied from Stack Overflow.

    Replacing them with an AI would increase the quality of software by orders of magnitude, and increase the productivity of everyone who can't be replaced.

    1. Re:This is different from the status quo how? by LQ · · Score: 1

      The people who call themselves "coders" already do little more than paste together half-assed open source projects they find on github and snippets copied from Stack Overflow.

      Replacing them with an AI would increase the quality of software by orders of magnitude, and increase the productivity of everyone who can't be replaced.

      Modern dev ops: understand the problem; find existing tools and glue them together with bespoke code and help from stackoverflow; test; understand why it doesn't work; debug; decide it fixes the problem; phased deployment.

      Maybe AI could one day do bits of that but it'll be a long time before you would trust it to do it all.

    2. Re:This is different from the status quo how? by thinkwaitfast · · Score: 1

      It's not AI, it's a macro.

    3. Re:This is different from the status quo how? by Anonymous Coward · · Score: 0

      But you've hi-lighted how shit AI actually is.

      Consider a dozen software projects, all copying the same code snippets from SO. But arranging them in different ways, and providing the framework "glue" to meet the application, is exactly what the programmer is best at - and all AI (at time of writing) is absolutely childish at.

  32. Yes, Microsoft really does code badly. by Anonymous Coward · · Score: 0

    "... With program synthesis automating some of the most tedious parts of programming, he says, coders will be able to devote their time to more sophisticated work."

    Classic Microsoft. This is why their code is huge and slow. They don't give a crap about code quality and see coding as cut and paste. Classic example -- DR DOS was way smaller than MS DOS, and did all the same stuff. It just wasn't filled with crap code no one cared about.

  33. "Is developing" by Tough+Love · · Score: 1

    "Is developing", not "has developed". I understand that Dr Frankenstein was developing a perfect human, made of snippets gathered from graveyards.

    --
    When all you have is a hammer, every problem starts to look like a thumb.
  34. H1Bs at MS by Anonymous Coward · · Score: 0

    In all fairness, cutting and pasting other people's code snippets together is exactly what MS is used to from their hordes of H1B staff.

  35. Oh, is it 4GL time again? by mccalli · · Score: 4, Informative

    All you have to do is specify the requirements, then you can just graphically draw it and put the app together! That's it! That's all you'll ever need to do. And it will work, just like it did in the 90s.

    Actually, it will work exactly like it did in the 90s. Which is to say not at all, and to store up a load of 4GL take-out projects for the early 2000s...

    1. Re:Oh, is it 4GL time again? by Ensign+Nemo · · Score: 1

      You laugh but this is what ASIC/FPGA developers are going through right now. I'm old enough to remember the 4GL attempts from the 90's. A couple of the tool vendors (looking at you especially, Xilinx) are pushing the living hell out of tools that let you drag and drop blocks together and voila. You are correct that it works as well as it did 30 years ago.

    2. Re:Oh, is it 4GL time again? by edtice1559 · · Score: 1

      The 4GL's of the 1990s were a terrible idea because they didn't ensure well-formed transactions. They had the clients send SQL directly to the database. They weren't a bad idea due to lack of expressiveness of the languages!

    3. Re:Oh, is it 4GL time again? by phantomfive · · Score: 1

      And the same Alan Perlis quote still applies: "When someone says 'I want a programming language in which I need only say what I wish done,' give him a lollipop." Note that this was also the goal of second-generation UML.

      But you know, now that we have AI, this time it will work.

      --
      "First they came for the slanderers and i said nothing."
    4. Re:Oh, is it 4GL time again? by phantomfive · · Score: 1

      I went through a workshop with some Xilinx vendors a few months ago on their new FPGA tools. They were nice, you could just drag-and-drop an entire CPU design into your FPGA, but at the end of the day, they didn't relieve you of the burden of actually understanding how things worked. In most cases I think you'd be better off just applying the time and effort to learn verilog (which is what I was hoping to get from the workshop, but oh well).

      --
      "First they came for the slanderers and i said nothing."
    5. Re:Oh, is it 4GL time again? by avandesande · · Score: 1

      All the DAL's currently do this too. Not that I agree with their use... your up shits creek when you hit a few million records

      --
      love is just extroverted narcissism
    6. Re:Oh, is it 4GL time again? by edtice1559 · · Score: 1

      Data access layers send SQL to the database, sure, but they guarantee that it is well-formed. That's their purpose. With the 4GLs, the clients sent the SQL directly. If somebody connected with out out-of-date or modified client, they could cause all kinds of havoc. A data access tier guarantees a well-formed transaction.

  36. Sounds like by Anonymous Coward · · Score: 0

    A copyright infringement nightmare...

  37. Oh, really? by Ecuador · · Score: 2

    Bad code is already perversive, it is much more common than good code. So, you write an AI that takes various snippets of, more likely than not, bad code and combines them. And this AI is still written by coders who, more likely than not, are not the best coders themselves, so the sum will probably be even worse than the parts... If Microsoft has great engineers working on fancy stuff like that, perhaps they should instead throw a couple to the Skype team for example (I don't know what they are doing, but they are slowly degrading what was a useful service).
    In any case, good coders already reuse libraries etc and end up doing the job of several coders that are inventing the wheel. And it is much easier for the non-technical person to communicate with a coder to describe the requirements, because an AI system would still need a specification language to describe things - it would just be a higher level programming language in a way.
    I remember I was told that when SQL first came out (SEQUEL) there was the idea that business users would be able to communicate with databases so db programmers wouldn't be needed... yeah, right.

    --
    Violence is the last refuge of the incompetent. Polar Scope Align for iOS
    1. Re:Oh, really? by Kellamity · · Score: 1

      Perhaps they should finish the Azure back-end and maybe even fix some of the bugs in Visual Studio too!

  38. And they said it could never be done! by Archtech · · Score: 4, Insightful

    "Called DeepCoder, the software can take requirements by the developer, search through a massive database of code snippets and deliver working code in seconds..."

    This I have got to see. By the way, I notice that the first thing mentioned is the proposed name. "DeepCoder" - well, with a name like that, how could anything go wrong? After finding that name, I expect the rest of the project was all downhill. So to speak. Erm...

    1. "...take requirements by the developer..." Expressed in what form? As random remarks over a cup of coffee - in which case the usual proportion of incorrect, incompatible and misconceived requirements can be expected, along with the standard quota of perhaps 90% of the requirements not being mentioned at all (because no one has thought of them). Or perhaps in some rigorously defined logical format, in which case we might simply call them "pseudocode" or "Model Driven Design" or perhaps "formal methods".

    2. "...search through a massive database of code snippets and deliver working code in seconds..." Ah, the long awaited "Frankenstein IDE"! Now you too can have a loving companion or friends stitched together from offcuts of raw liver and other offal. If only it weren't so easy to pass so airily over real difficulties to conjure up images of working code delivered in seconds. I wonder if Microsoft has thought of providing some kind of validation utility to make sure that the "working code" actually implements the requirements?

    --
    I am sure that there are many other solipsists out there.
    1. Re:And they said it could never be done! by Anonymous Coward · · Score: 0

      This is coding in the same way that a pair of scissors, a pile of magazines and some glue is photo-shopping.

    2. Re:And they said it could never be done! by istartedi · · Score: 1

      Expressed in what form? As random remarks over a cup of coffee

      Sure. Just install it on Amazon Echo and leave it in the office. A few pallets of Beanie Babies might show up once in a while for no good reason, but you'll get the job done. /sarc

      --
      For all intensive purposes, "whom" is no longer a word. That begs the question, "who cares"?
    3. Re:And they said it could never be done! by Anonymous Coward · · Score: 0

      ...search through a massive database of code snippets and deliver working code in seconds...

      I wonder if that problem would reduce to a set of SAT problems..

    4. Re:And they said it could never be done! by Anonymous Coward · · Score: 0

      ... a massive database of code snippets ...

      'Round these parts, we call that Maven.

  39. Sure by OneHundredAndTen · · Score: 1

    People have been announcing such things at least since the late 80s, possibly earlier.

  40. TCS has been doing it for ages. by 140Mandak262Jamuna · · Score: 1
    They listen to the specs, misunderstand it first, then mistranslate it into some Indian language and explain it to some graduate of a diploma mill. He/She will add his/her own misunderstanding on top, search through the code they have written or seen in some application for some company in some project that has one key word that matches. They copy & paste the code and claim the project is done.

    Then it is up to the customer to test it, test it again, and make the code meet the specs through a complex evolutionary process where they file bug reports and the developer fixed the reported symptom, without fixing the underlying cause, and also introducing a new bug. This process eventually stops when the customer gives up in disgust and agrees to modify the specs to meet what the code does.

    The only difference seems to be they have replaced the diploma mill grad with some artificial intelligence. In some sense it is a very good experiment to see if Artificial Intelligence can ever match the Natural Stupidity.

    --
    sed -e 's/Chuck Norris/Rajnikant/g' joke > fact
  41. Focus on your failing windows 10 ecosystem instead by Anonymous Coward · · Score: 0

    Focus on your failing windows 10 ecosystem instead of promising "AI", Microsoft.

  42. Here is the link to a demo by Anonymous Coward · · Score: 0

    https://www.youtube.com/watch?v=MzJ0CytAsec

  43. Sweaty Ballmer Chanting by Anonymous Coward · · Score: 0

    developer bots!!! developer bots!!! developer bots!!!

    I would have done all caps, but the slashdot filter doesn't like that...it's not like i committed some mortal sin, like post a movie spoiler.

    1. Re:Sweaty Ballmer Chanting by GameboyRMH · · Score: 1

      At that point it will be BallmerBot doing the chanting. It has a 2-gallon sweat reservoir, a highly reflective chrome headpiece, and can throw full-sized executive chairs over 50ft :-P

      --
      "When information is power, privacy is freedom" - Jah-Wren Ryel
  44. 27 heads of lettuce by swm · · Score: 1

    This is the first numerical problem I ever did.
    It demonstrates the power of computers:

    Enter lots of data on calorie & nutritive content of foods.
    Instruct the thing to maximize a function describing nutritive content, with a minimum level of each component, for fixed caloric content.
    The results are that one should eat each day:

            1/2 chicken
            1 egg
            1 glass of skim milk
            27 heads of lettuce.
                    -- Rev. Adrian Melott

  45. Higher order functions by Anonymous Coward · · Score: 0

    We Lisp people knew we would eventually exploit higher order functions. Problem is that C++ and Java people convinced the world that macros are bad.

    1. Re:Higher order functions by TechyImmigrant · · Score: 1

      We Lisp people knew we would eventually exploit higher order functions. Problem is that C++ and Java people convinced the world that macros are bad.

      Unreadable code is bad.

      --
      I should use this sig to advertise my book ISBN-13 : 978-1501515132.
    2. Re: Higher order functions by Anonymous Coward · · Score: 0

      Not if no one is reading it

  46. Won't happen. Sorry, there is no AI ever ... by Qbertino · · Score: 1

    ... that can turn the harebrained buzzword/bullshit-laden confused and convoluted descriptions ("specs") of my marketing crew into a working product.
    No freakin' way. The AI would probably have a meltdown.

    My job will remain for a loooong time. If the rest of the population were able to formulate what they actually want, I'd be out of a job 10 years ago, with CASE tools taking my job. But that didn't happen. However, I might be the one discussion the new software with the AI. Looking forward to that. But then again, research shows that talking uses something like 80% of our brain while writing uses 25%.

    So some sort of coding via type, even if it is to talk to an "AI", will probably always remain.

    My 2 cents.

    --
    We suffer more in our imagination than in reality. - Seneca
    1. Re:Won't happen. Sorry, there is no AI ever ... by Black+Parrot · · Score: 1

      ... that can turn the harebrained buzzword/bullshit-laden confused and convoluted descriptions ("specs") of my marketing crew into a working product.

      I just deliver a "Hello, World!" program, and when they say "WTF?" I say "Sure, it's got some bugs in it, but I got it out ahead of schedule!"

      --
      Sheesh, evil *and* a jerk. -- Jade
  47. Interesting, this combines several no no's by Anonymous Coward · · Score: 0

    In beginning college programming classes many errors, both syntactic and logical start with the bad programming habit of cutting and pasting code. On top of this one of the things that will get your resume thrown in the circular bin quicker than anything is if they have any indication that you are in any way a script kiddie.

    This is both of these combined into one. It sounds like a good idea, but if it works I will be surprised and on top of that even if it works, I would be surprised if anyone would believe it worked well enough for it to catch on. Ask the CSAIL department at MIT and they will poo poo the idea and laugh you out of the building. That has been their position on this since the early 1980s.

    I don't see this causing a major stir for quite a long while because of several flaws with the very concept.

  48. Sample output by Anonymous Coward · · Score: 0


    #include <stdio.h>
    #include "error.h"

    int main( int argc, char** argv )
    {
              if (argc < 3)
                      error( "%s: not enough arguments", argv[0] );
    This question has already been discussed and answered numerous times.
    }

    1. Re:Sample output by Anonymous Coward · · Score: 0

      Lol, just about spit out my coffee. Thanks for that, it made my day! :-)

  49. The just hired by Anonymous Coward · · Score: 0

    Jeff Dean to sit inside a room with a keyboard.

  50. I want this now by roman_mir · · Score: 0

    Maybe a month ago I was talking with my developers about this very thing and I did hear some uneasinnese in their voices, some fear of the future job prospects. However I explained that this is exciting if at all possible. This would not replace the developer, it would make a developer quite a bit more productive though, allowing for the business requirements to be implemented much faster.

    Say you are working on a large use case, you put together the data model, maybe most of the DDL, some front end work, maybe the HTML components (if web based). Now you want to connect the data to the presentation. So bring up the AI, tell it the data validation requirements while pointing at the fields on the screen and pointing at the database fields. It should fill in the validation routines and the code that connects it all while following the project standards for security checks, transaction handling, basically generating the missing code.

    The developer would provide the end points and describe the behaviour with human language/pointing at things while describing this, the AI would provide a number of solutions to choose from.

    The AI should keep track of test cases based on the description, provide a test suit. It should keep an eye on the code base at all times to notice what it can do for the developer and propose it whenever it sees the opportunity, etc.

    Would this put developers out of jobs? I think it would make developers much more productive, allowing for many more projects to be created and tested. The AI should help integrating components, keep track of configurations, do more testing on all levels (functional, security, load, etc). The projects should be churned out faster and with a higher quality, while more ideas would have a chance to be tried out as projects.

    1. Re:I want this now by thinkwaitfast · · Score: 1

      uneasinnese in their voices

      Clueless people are always going to be uneasy. They're usually some of the first to be fired.

  51. Licencing by The+Evil+Atheist · · Score: 2

    Where are they getting snippets from? To me, this just makes GPL'ing my code much more attractive.

    --
    Those who do not learn from commit history are doomed to regress it.
  52. High level abstraction by stud9920 · · Score: 1

    So you mean high level abstraction is the hard part and once a problem has been stated at sufficiently low level the lower levels can be standardized and needn't be recoded from scratch everytime ?

    I'm shocked!

  53. Remember those old lists of gag opcodes? by Applehu+Akbar · · Score: 1

    This would be the "Do what I mean" instruction that developers have always dreamed of.

    1. Re:Remember those old lists of gag opcodes? by Anonymous Coward · · Score: 0

      I believe DWIM in one of the LISP dialects is what you want...

      But it actually was a spellcheck for functions... and identified the correct function and fixed typographic errors.

  54. You're assuming specs are well written by f00zbll · · Score: 2
    As any consultant will testify, most functional specs are either non-existent or complete garbage. How many times have you discovered the business use case was wrong, the user story was wrong and the functional specification wrong. The problem with software development isn't technical, it's a human problem. I seriously doubt within the next 30 years, AI will make progress on the problem of "humans don't know what the hell they want and change their minds".

    We have all these different development methodologies to try and fail ideas fast and avoid wasting time. Often what a business person says isn't what they want. If someone invents an AI that can read minds, then AI writing software will be practical. Until then, garbage in != usable software.

  55. Yes but... by Anonymous Coward · · Score: 0

    Who is going to write new building block snippets?
    OH RIGHT.

  56. Poverty-Rich Leisure Class by pipingguy · · Score: 1

    This will end up like a lot of engineering design work outsourced to India, China, etc. Someoneses back in the home country will have to sort out all the bugs and crap (risky, tedious, thankless, unfulfilling work) while management pats themselves on the back and gets bonuses for having "saved money". And of course, competition for the thankless jobs will be fierce since so many will be under/unemployed. The past-promised cornucopia of jobs due to boomers retiring has been supplanted by automation and offshoring. Bye-bye middle class and welcome to the Poverty-Rich Leisure Class!

    1. Re: Poverty-Rich Leisure Class by hackwrench · · Score: 1

      I'm trying, baby. I'm trying.

  57. Something similar for artists by MobyDisk · · Score: 1

    A few years ago there was a tool that did something similar for art: you drew a really rough line-drawing that just gave a sense of scale and position to each object. Then you labeled each object like "cheetah" or "motorcycle" and had one special label for the background, like "desert." Then it ran an image search: it would look for an image tagged with the same label, with roughly the same proportions as the outline. It auto-photoshopped it in, and viola! Instant art! One of the demo pictures was a cheetah chasing a motorcycle, and it was pretty good and kinda funny.

    However, I notice that the art industry is largely unaffected.

    Also, I don't think it is so easy to just "blur and sharpen" between two areas of code. Maybe something like "content-aware fill" would work here? ;-) Not likely.

    1. Re:Something similar for artists by Black+Parrot · · Score: 1

      something like "content-aware fill" would work here? ;-)

      Yeah, you just spec it out with a lot of {...}, and let the AI fill it in.

      --
      Sheesh, evil *and* a jerk. -- Jade
  58. Oh thank god by Anonymous Coward · · Score: 0

    We can finally shitcan all the smelly, smug neckbeards.

  59. /dev/random? by Anonymous Coward · · Score: 0

    I'm sure it would do a better job than the MS coders.

  60. Developers! Developers! Developers! by Gumbercules!! · · Score: 1

    Does this mean Steve Balmer will have to come out stage yelling "AIs! AIs! AIs!"?

    1. Re:Developers! Developers! Developers! by Anonymous Coward · · Score: 0

      Nah! Balmer is gone - now, he only yells Clippers! Clippers! Clippers!...

  61. A Rose By Any Other Name by Anonymous Coward · · Score: 1

    So you're feeding a computer a list of instructions, and it is doing something based on those instructions. Sounds like coding to me, just a more higher level.

  62. Microsoft has an awesome track record with this by Anonymous Coward · · Score: 0

    Ah, metaprogramming, mark II.

  63. AHAHAHAHAH by Anonymous Coward · · Score: 0

    HAHAHAHAHA

    Not sure if I heard myself right, but...

    HAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHA

    Fxkn M$.

    kepps ME in a jb.

    HAHAHAHAHAHAHAHAHAHA

    Ahhhhhh, *sniff*

    fek

    hahehahe

    AI by M$

    The day the viral infections of m$ died.

    M$ have the clue of a parasite.

    The reason the OS has not been killed insofar as it has today, is business.

    Co-incidence?

    _captcha_ supplier

  64. The mother of all inner platforms by swm · · Score: 1

    This is going to be an inner-platform, not for a platform, but...wait for it...for a programmer.

    The Inner-Platform Effect is a result of designing a system to be so customizable that it ends becoming a poor replica of the platform it was designed with. This "customization" of this dynamic inner-platform becomes so complicated that only a programmer (and not the end user) is able to modify it.

  65. Re:Kill the H1b visa people by Big+Hairy+Ian · · Score: 3, Insightful

    Great so now the computer will write the program the customer doesn't want because he didn't really know what he wanted when he wrote the requirements. How will this AI piece cope with software maintenance & bug fixes?

    --

    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.

  66. Thanks clippy! by Anonymous Coward · · Score: 1

    Clippy has now transcended and is going to take revenge on every one that would not allow him to help and disabled him.

  67. What? by rokj · · Score: 1

    Yeah, ... and where do they get code from? --- Anyway, can't wait, ... so I am off surfing.

  68. Skillset needed by binkless · · Score: 1

    So here's a question: What skillset would be needed to use this approach effectively?

  69. Great but it won't put coders out of a job by GuB-42 · · Score: 4, Insightful

    What many people don't understand is that describing things to a computer, no matter how, is what coding is. The programming language is just a facade. Managing highly complex tasks accurately enough for computers to understand is where the real skills lie.

    Just look at one example from the paper :

    A new shop near you is selling n paintings. You have k < n friends and you would like to buy each of your friends a painting from the shop. Return the minimal amount of money you will need to spend.

    And the output (modified to fit slashdot):

    k=int; b=[int]; c=SORT b; d=TAKE k c; e=SUM d

    What it proves is that the AI is great at answering test questions. However, in a production environment, no one is going to write and maintain a description like this.
    And it is just a tiny function. To match the complexity of a real-life program, you have to imagine the same kind of description but spanning hundreds of pages...

    Compilers didn't put coders out of a job, these AIs may be the next step but they still won't displace coders. Although it may require some skill adjustments, it won't fundamentally change the job.

    1. Re:Great but it won't put coders out of a job by m00sh · · Score: 1

      What many people don't understand is that describing things to a computer, no matter how, is what coding is. The programming language is just a facade. Managing highly complex tasks accurately enough for computers to understand is where the real skills lie.

      Just look at one example from the paper :

      A new shop near you is selling n paintings. You have k < n friends and you would like to buy each of your friends a painting from the shop. Return the minimal amount of money you will need to spend.

      And the output (modified to fit slashdot):

      k=int; b=[int]; c=SORT b; d=TAKE k c; e=SUM d

      What it proves is that the AI is great at answering test questions. However, in a production environment, no one is going to write and maintain a description like this. And it is just a tiny function. To match the complexity of a real-life program, you have to imagine the same kind of description but spanning hundreds of pages...

      Compilers didn't put coders out of a job, these AIs may be the next step but they still won't displace coders. Although it may require some skill adjustments, it won't fundamentally change the job.

      That was before the new breakthroughs in natural language processing. Before computers were really bad at understanding human language. Now, with deep learning that has completely changed. Just use Google Assistant and Alexa and see how far it has come. So, in effect, the modern breakthroughs essentially convert human language into compiler language. If there is ambiguity, then just like Google Assistant and Alexa, it can interactively ask for more details and clarifications.

      It will make coders super productive and put lesser ability coders out of work. The good coders will suddenly start cranking out x10 more code as they can figure out how to get the AI system to do parts of their jobs.

      Anyways, the current method of development is that the hundred page spec. is currently broken down into thousands of unit tests. So, if you can automate the creation and maintaining of half of these tests, then you've eliminated half of your devs.

    2. Re:Great but it won't put coders out of a job by GuB-42 · · Score: 1

      It will make coders super productive and put lesser ability coders out of work. The good coders will suddenly start cranking out x10 more code as they can figure out how to get the AI system to do parts of their jobs.

      Anyways, the current method of development is that the hundred page spec. is currently broken down into thousands of unit tests. So, if you can automate the creation and maintaining of half of these tests, then you've eliminated half of your devs.

      It is what I think, I just have a more optimistic point of view.
      Instead of eliminating half of the devs, I expect twice better code. In fact, the thing about unit tests is how it should be done. Unfortunately testing is commonly barely given a second thought and it is possible that AIs will simply add testing where there wasn't before.
      At one placed I worked, we had various static analysis tools setup. It didn't put code reviewers out of a job, there weren't any reviewers in the first place. Quality improved, no one got fired, everyone happy.
      As for low skilled coders losing their job, yes, it might happen. Thankfully, young coders can probably be retrained as AI assisted coders rather quickly. And older coders should have known better. Rapidly evolving fields like programming require you to do more than your assigned tasks in order to stay relevant. If you didn't, sooner or later, things will turn bad for you, AI or not.

  70. Unfortunately, you're wrong, jmcbain by Anonymous Coward · · Score: 0

    Why would anyone think they could get away with posting shite like this ?

    Ah, Slashdot.

  71. It's done by Microsoft by lcarnevale · · Score: 1

    I have absolutely no doubts this will be a catastrophic failure, as it's done by the same people who made Bob, Windows ME, Windows Vista and Windows 8 just to name a few. So no concerns over losing my job at all, more like in the mood of grabbing some popcorn and watch it crash and burn.

  72. Once upon a time... by heikkile · · Score: 3, Insightful

    ... there was this idea that we let people define their requirements in a formal sort of English, and let the computer write programs from that. That was called COBOL, in 1959, and the computing world hasn't been the same since.

    --

    In Murphy We Turst

    1. Re:Once upon a time... by Anonymous Coward · · Score: 0

      And then people got sick an tired of using a computer writing programs in COBOL. and hence UML was born. And the world hasn't been the same since.

    2. Re:Once upon a time... by Anonymous Coward · · Score: 0

      I can't imagine a serious company letting their sites or apps be coded by a Microsoft product. Look how much slower Windows 10 is than Windows XP was.

  73. Software patents by fox171171 · · Score: 1

    search through a massive database of code snippets

    Does it also search through a database of software patents to make sure that it doesn't infringe?

    A better use of the AI in today's world would be to review all existing software patents, then generate as many non-patented concepts as possible and file for software patents on them.

    1. Re:Software patents by Jeremi · · Score: 1

      Does it also search through a database of software patents to make sure that it doesn't infringe?

      Right now it's using this database, presumably they have a licensing contract with Randall Monroe that gives them permission to use the code.

      --


      I don't care if it's 90,000 hectares. That lake was not my doing.
  74. You still need completely specified algorithms by flink · · Score: 1

    Given a list of inputs and outputs for each code fragment, DeepCoder learned which pieces of code were needed to achieve the desired result overall.

    Maybe if you work for NASA, are building life and safety critical industrial software, or writing firmware for a pacemaker you get requirements that are this specific. In the other 99% of use cases a developer will be writing to, forget about it. The cost of specifying a problem to that level of detail is astronomical and also multiplies the cost of any changes you might have to make.

    Also, who is writing these detailed specs for the AI to follow? Software engineers. This thing is a threat to code monkeys churned out of 6-month certificate programs, not experienced developers. And if my job in 10 years is to interpret hand wavy customer specs into Lojban for an AI to interpret and then hand the results to some interns to groom into something maintainable, then I'll adapt. It's not that different than what I'm doing today.

  75. Everything will be fine. by flyonthewall · · Score: 1

    Self coding AI...

    Shudders. Now it's snippets. Next will be full code. Then it will awaken...

    --
    "The avalanche has already started. It's too late for the pebbles to vote." - Kosh
  76. I will consider it a success when by fox171171 · · Score: 1

    I will consider it a success when I can speak to it and say "I want a piece of software that, without doing anything illegal or immoral, will make me a billionaire in under a year", and it works. Multi-millionaire in under a year is a partial success.

  77. What is coding anyways? by Anonymous Coward · · Score: 0

    Am I the only one who think coding is the process of interpreting what the developer wants and put it into code, in details, so that the machine can understand? By introducing these AI coders, a lot of the details will be lost and nobody will be 100% sure what will be going on in the final programs. If the "coding" here in the context means going from human spoken language directly to machine codes when these AI coders become "mature", I think it should be a concern to all of us. Sometimes being able to do something doesn't necessarily mean we should actually do that something.

  78. AI Programmer...from Microsoft...really? ;-) by evolutionary · · Score: 1

    Let's look at 2 basic facts: 1. Programming is at least partially an art. Along with interpreting human requirements which are often the most difficult part of the any software designer's job. An AI can make basic shell classes, but after that, well, even user friendly language constructs have been found lacking after months or years of human involvement. So an AI doing that job for anything other than basic junior level tasks, is not going to be able to do the job at a professional level. Not for quite some time. If ever. (Probably a few sci-fi books on the dangers of this) 2. This is MICROSOFT. Come on. Them make a good AI? They have trouble making a good operating system. If this came from, say, the University of Rochester I might have more faith, but MS? The people who gave us Visual Basic (the worst programming language for quality code), Windows ME, Windows 8, Windows Mobile edition (with a memory manager so bad 3rd parties made money writing software to check your code to be sure yours didn't make it crash) and most recently Windows 10 (still being rewritten, and will be again with the EU "concerns" on privacy)? . No....just...no.

    --
    "Imagination is more important than knowledge" - Einstein
  79. Re:Kill the H1b visa people by __aaclcg7560 · · Score: 1

    Don't forget we need to build a 2000-mile wall on the Mexican border, and stop all Muslims from entering the country.

    And the nukes being smuggled in bales of pot.

    http://www.thekindland.com/policy/today-in-bomb-weed-arizona-congressman-says-terrorists-will-ship-2654

  80. The requirements will be as long as the code by Xoc-S · · Score: 1

    I took a Software Engineering class where we covered formal specifications. For even a simple piece of code, the formal specifications were longer than the code to cover all of the boundary conditions. It was faster and simpler just to write code. Using code snippets in not new. We call those libraries. I've used those all my life. My code specifies which libraries to use and how to tie those together. Also, random code written by other people are frequently crap. Who is going to vet the quality of the code? I am not scared by this at all.

  81. Re: Fictional AI by hackwrench · · Score: 1

    More like Penultimate. https://openlibrary.org/works/...

  82. Will it also debug the code... by schleprock63 · · Score: 1

    in my 30+ years of experience in "coding" 80 - 90% of my time is spent debugging/maintaining code. any idiot can string lines of code together to complete a narrow well defined task. as soon as you give it to a real user, they try to use it in ways you never thought of and voila, bugs... in addition, i have yet to work on a project where the requirements were even close to correct the first time (or the second, third...). schleprock

  83. That is called RAD... by Anonymous Coward · · Score: 0

    ...and has been in the market for a long time. Now if they build an AI to turn a client's thoughts into functional specification, that would be real achievement.

  84. Re: selfish by hackwrench · · Score: 0

    Oh go cry me a river with your false lack of selfishness.

  85. you know what... by Anonymous Coward · · Score: 0

    They could even get it to parse UML right.

  86. Re: YAD by hackwrench · · Score: 1

    Yet another documentary: https://openlibrary.org/works/...

  87. Microsoft has done this with music already by TwoLeggedMammal · · Score: 1

    Remember when Microsoft Songsmith put Sound Engineers out of work? https://www.youtube.com/watch?... This is really troubling that the same could happen to us programmers.

  88. Sure thing bro by Anonymous Coward · · Score: 0

    Sure thing bro; we're heard those promises since the 1960s and every single one of these fuckers generates more jobs for coders.

    COBOL, 4GL, RAD, Specification Languages all failed in that respect; and the company who set computers back at least 10 years is gonna succeed? Sure thing bro, and while you're at it, find a different vendor for your weed, because there's something funky in the shit you're smoking now.

  89. still not nervous by l3v1 · · Score: 1

    "search through a massive database of code snippets and deliver working code in seconds"

    Thing is, I'm in the business of writing code most of which you won't find in code databases. Also, in a sense, among those that create such algorithms that are behind those like the above mentioned. However, I'd be delighted if a day would come when I could shortly describe what I want and some synthesis engine could create the code for me, even if only partially. Especially the tedious mundane parts - however, most of those we don't re-write but re-use anyway. So no, I'm not really afraid about my job becoming obsolete.

    --
    I am putting myself to the fullest possible use, which is all I can think that any conscious entity can ever hope to do.
  90. In reality, this can't handle division, or modulus by raymorris · · Score: 3, Interesting

    Indeed this "new" tech (copy pasting junk from Stackoverflow) can't handle simple tasks like division, or modulus.

    One programming task I handled, we already had a function which basically computed some averages, using division and a few other simple operations. To simplify, lets's just say the core function was something like quotient(x,y), which would return X divided by Y. That was useful. The customer very much wanted a slightly different version. They wanted quotient(x). That was the requirement for the software, compute quotient(x). I'd like to see any AI produce code for that. I, a programmer, did eventually get the customer what they needed.

    My current assignment I'm working on today is similar. It's basically "write an SQL query which returns the list of software products we have in our database, and for each list all of the operating system versiona they can run on". Sounds simple, right. The relevant data is a table of about a million rows in this form:

    SoftwareID - ProgramName - Vendor
    1 - Firefox - Mozilla Foundation
    2 - bash - FSF
    3 - jQuery - jQuery Foundation

    I'd love to see some IA that writes a query to get, from the above table, information about which OS versions each software package can run on. That's my task as a programmer, the requirements set by the product manager. I'll take care of the need, get the job done. I may also strangle my product manager, but that's a different topic.

  91. See: Compiler by Anonymous Coward · · Score: 0

    So it's a program that turns a high level description of technical procedures and transforms it into low-level descriptions suitable for running on execution?

    Gee I'm glad they thought of that!

  92. Still slower than me by holophrastic · · Score: 1

    "Given a list of inputs and outputs for each code fragment", "can turn your descriptions into working code in seconds,"

    Yeah, if I had either of those, I'd already be done. "descriptions" are pseudo code, and inputs-and-outputs are already pretty damned close to almost every business-logic algorithm.

    Now, if you can tell me what the client actually wants, figure out how their business runs and what they actually need, then maybe you can spend a week figuring out the inputs, outputs, and code descriptions. Then whether I spend five minutes typing perl, or five minutes using microsoft's tool to find snippets, welcome to the very last 1% of the job.

    Much like 3D printers, this only changes the tools. I could have always built a chair from wood with power tools really easily, given a diagram. The hard part was figuring out how I wanted the chair to look, and doing all of the finishing. The 3D printer doesn't do any of that. This snippet-finder doesn't do any of that.

    So, to summarize, if by "coder" you meant "translates-pseudo-code-into-java", then congrats on your blue-collar career in a white-collar industry.

  93. license by Anonymous Coward · · Score: 0

    What is this massive db of code snippets, from what language(s), and what are the licenses used by said snippets?

  94. Re: Programming languages by hackwrench · · Score: 1

    All this does is make natural language a programming language.

  95. MS is always trying to be an MBA's wet dream by MrData · · Score: 1

    Most software house management looks down at developers as an expense and not an asset, and MS ALWAYS caters to this view.

  96. Excellent by DivineKnight · · Score: 1

    Then I can move onto something else.

  97. Re: genetics vs. ideas by hackwrench · · Score: 1

    I never cared about my genes anyways. Now ideas... I can feed that to the technology and it will carry them forward. I welcome our technological replacements.

  98. top kek by Anonymous Coward · · Score: 0

    tl;dr All is well and is just as before. Cheers to you plebs living in fear that you can't learn more than the smartest machine you'll ever see.

    I've been visiting slashdot for 9 years, and in the beginning AI nostalgia posts were common. Even if the tech was there it wouldn't work, even if everyone wanted to do it and the tech was there, it wouldn't work. No other life form looks for something else to handle its apparent struggles so often that you find the foolish answer that technology can replace people and that human intelligence can somehow come second to a piece software. Only organic life can replace other organic life without loss of purpose. A machine has no sense of purpose nor does it have the internal desire to exist and succeed with love and compassion like people do. So no, it won't be replacing people that can vision a world where computers assist people and do not replace them.

  99. The law of unintended consequences by woboyle · · Score: 1

    Forget this one at your peril. This will come back and bite MS on the rear end!

    --
    Sometimes, real fast is almost as good as real-time.
  100. Re:In reality, this can't handle division, or modu by someone1234 · · Score: 1

    I don't quite see your problem. You had lots of ways to implement quotient(x)...

    One possible: double quotient(double x) { return x/2.0; }

    --
    Patents Drive Free Software as Hurricanes Drive Construction Industry
  101. Re: Programming languages by courteaudotbiz · · Score: 2, Insightful

    Looking at how FrontPage generated simple HTML markup language behind the WISIWYG interface, programmers have nothing to fear for their job...

  102. the death of innovation and optimization by Anonymous Coward · · Score: 0

    so its going to take the worst habits of a horrible programmer and make that the defacto standard? This guarantees nothing new ever gets created because all it can do is recycle code. Optimizations wont happen either for the same reason.
    Might work for shitty web sites and tiny utilities but doesnt sound like a great idea for big data or complicated functionality.

    This of course assumes that the AI will interpret the specs correctly... this is the best case... im not too worried about losing my job yet.

  103. A fine line by rkordmaa · · Score: 1

    There is a fine line between an AI that can program and one that cant, luckily its easy to distinguish one from the other. All you need to do is let the AI loose at its own codebase and if its like all other programming AI-s before it it will muck things up, crash and burn. If however your AI is the very first successful programming AI you will get AI singularity and humankind will possibly be exterminated the next day, hasn't happened yet but there is really no way to gauge how far we are. Could happen tomorrow for all i know, but i wouldn't bet on it. AI that can do programming is just exponential self improvement away from general AI, you could say that writing an AI capable of programming is probably the easiest way to go about creating an general AI. Its also all theoretical because nobody has managed to figure it out yet and it doesn't look very promising so far.

  104. Read the paper. by TechyImmigrant · · Score: 1

    Then you will know you job is safe for a while.

    --
    I should use this sig to advertise my book ISBN-13 : 978-1501515132.
  105. Wrong - This Is A Productivity Tool For Some Devs by Anonymous Coward · · Score: 0

    The use case for this does not seem to be a businessman selecting code snippets to do a task. This is integration type development work where a somewhat skilled developer needs to verify the business objects data lines up and in some cases will need to be cleaned up or the snippets tested and improved. Also, unless someone wants to argue that most useful pieces of code are already written and all that remains is to cobble them together in different mashups, I would argue this makes developers of new snippets, widgets, controls, etc more valuable because it may increase the user base for their libraries of code with a tool that does some searching and vetting of components. In fact, isn't it sort of an enhanced google "search and join" for pieces of example code. I could see people selling widgets like there used to be a market for 3rd party ActiveX/COM controls. Ultimately let the market decide...

  106. Good by Anonymous Coward · · Score: 0

    Maybe now Microsoft updates won't break their crappy OS all the time.

  107. Let this AI talk to marketing by Anonymous Coward · · Score: 0

    Marketing > I want a poney
    Robot > Segmentation Fault (core dumped)

  108. I doubt it will actually work by naris · · Score: 1

    Show me a real application generated by it that actually comes close to actually working...

  109. Good luck with that. by pla · · Score: 1

    "I want a program that shows what our competitors' pricing will be tomorrow. Sort it so both name and price are always in ascending order. Email the output as plain text to the following 27 people, but only Joe and I should have the ability to edit it. Make the keyboard give a mild electric shock to managers in stores more than 10% more expensive than their regional competitors. And it should run exclusively in The Cloud, but not require internet access for any of its functionality."

    I wish I was joking.

  110. Re:In reality, this can't handle division, or modu by Anonymous Coward · · Score: 0

    I'd like to see any AI produce code for that.

    Well, now they can, because YOU wrote about it on the internet! Stop feeding the big data machines!

  111. This explains a lot by eneville · · Score: 1

    So now we know how Windows 10 code was written. It just took a bunch of previously written chunks of kernel and applied a new UI based on a "give me something we already had" command.

  112. Stack Overflow called by fredness · · Score: 1

    What do you think we've been doing last few years? Crowd sourcing answers to every bloody coding questions/solution you can think of. Here's how it works. Go to their website (and not just theirs, the Internet hs many websites about this last I checked), type in the coding thing you want done. In seconds it provides you with many different ways to do it, links to knowledgeable folk who actually have done it, and references to libraries and related posts in case maybe someone else actually wrote the requirements of your question better than you did.

  113. Re: Programming languages by Beezlebub33 · · Score: 1

    By definition, that's impossible. Natural language is too ambiguous, so cannot specify a computer program of useful complexity. Programming has to know what you really want, handle edge cases, handle errors, etc. By the time you have put all the requirements into a form that is useful, you've created a programming language. That's not to say that what they are doing is not useful, since DSLs are really useful and inferring some of the rest is helpful. If you can translate DSL into an existing (or new) programming language, and then have the computer identify what the edge cases / failure mechanisms are and provide ways to handle them, then you've made programming better. Much of modern computer programming consists of converting the user's requirements into a little bit of custom code, putting it in a framework, and adding whatever code snippets from StackOverflow you need to handle your problem.

    --
    The more people I meet, the better I like my dog.
  114. Bullshit by gweihir · · Score: 1

    Unless you are coding very simple business code, that is never going to work. You will get insecure code with bad or no error handling that does not even work for many inputs and is inefficient in every possible way in addition. Sure, replacing a very bad coder may work that way, but very bad coders have _negative_ productivity, because cleaning up after them is more expensive than coding things from scratch again.

    So no, the kind of coding I do (and I do not do it as major occupation, I only do it when the task is difficult enough that our customers fail to find anybody else than can do it and the task is interesting) will not be replaced by AI anytime soon and very likely not ever.

    --
    Most ACs are not even worth the keystrokes to insult them. Be generically insulted by this and ignored otherwise.
  115. Someone just programmed themselves out of a job! by Anonymous Coward · · Score: 0

    That software could not program its way out of a bag.

  116. Oh good! by Anonymous Coward · · Score: 0

    Oh Good!, I can use this to program all that AI code I wanted to write!

  117. They said they had something like this in 1981! by Anonymous Coward · · Score: 0

    I remember reading ads in a computer hobbyist magazine (Nibble?) around 1980-81 for a package called, simply, "The Program." It was touted as a program to end all programming, something where you could input broad specifications for what you wanted to do and it would take care of the coding.This was for the Apple ][ series so it couldn't have been overly sophisticated, but other than the ads I never heard anything more about it.

  118. I have this mental picture... by mnemotronic · · Score: 1

    ...a massive database of code snippets...

    I have this mental picture of a robot trying to assemble a working airplane from a box with Legos, Lincoln logs, Tinker toys, Erector set parts, playdoh and silly putty, It may look like an airplane but I ain't gonna fly on it.

    --
    The Russians have won. They have made the world a cesspool of distrust, greed, fear and hate.
  119. Comprehensive spec by stooo · · Score: 1
    --
    aaaaaaa
  120. So did it birth itself? by MrSome · · Score: 1

    I mean, if it didn't write itself... then what good is it? Some developer has to write the code for the thing that writes the code.... right? And since all of the programmers are now out of jobs... who's going to maintain those code snippets that this thing uses? Or are we saying that every code snippet that ever needed to be written, is done... ? No. This is stupid. It's a fun idea... and they can run with it... but I'm not worried for at least another 2 decades of coding. I hope I'm out by then. Not because of age, but choice.

  121. Re:Kill the H1b visa people by Darinbob · · Score: 1

    Can I just write a description that ends with "and make it all fit in 64K, with a response time of 1ms, and zero defects." and this just magically happens? If not, then we're not out of a job. Sure *some* programmers will be out of a job, but I think the class of programmers in this position should already know that they're due to be outsourced anyway.

    There's been this holy grail of automatic code generation by entering a design in some different way other than text (UML) and then clicking a button. And when something almost works but is amazingly impractical (Rational Rose) people get excited. Someone was actually bragging about using a tool which had "only" 100% overhead in its auto generated code (like saying that your diet is great since you only gained 50 lbs). And how do you even fix bugs in auto generated code? Do you assume that the design must have been wrong and start moving block around on a diagram, or do you dig into the obfuscated mess that the tool spat out?

    I have on a few occasions spent time searching for code snippets online for something I needed to do. Hard stuff of course, the easy stuff I can just do in my sleep. But I would find lots of answers that were completely wrong for what I wanted, it was only for windoze, or a broken stackoverflow answer that no one downvoted, or dozens and dozens of repeated answers all copied from each other even though it was wrong, etc. If you're in a windows monoculture, doing some vaguely generic web app that every company in the world does, then maybe this works, but you can have trained monkeys with certificates do that too. Now ask how can you do that *better* than all the vaguely generic web app that everyone else does and put it onto a different platform then you have to do the leg work yourself instead of relying on code snippets from search engines.

  122. New Job Title: Full-Stack Chief Product Officer by Anonymous Coward · · Score: 0

    Yup!

    In this role, after discussions with other CXOs, you conceptualize the product and implement it yourself. No delegation, no outsourcing, no offshoring. Great for the bottom-line, if you can manage to have a top-line!

    Upper management, you are welcome...

  123. Microsoft stuck in the 1960s by countach · · Score: 1

    So Microsoft have invented the procedure call, except they implement it by copying code around from a library instead of a procedure call, like someone in the 1960s might have done. Riiiiiight.

  124. Problem Goes Far Beyond That by Anonymous Coward · · Score: 0

    I don't know about anyone else, but I routinely change people's jobs, their business process.

    They come to me with a spec. Maybe. If it's a spec, it's a "vague and typically clueless spec." It has holes in it the size of the Grand Canyon and there's a good deal of arm waving over who does what & why.

    Then I have to tell them, sometimes after having written part of the solution, that I cannot automate their business process. They have logic based upon human intuition, or rules-based logic and I'm not working in a 5GL, or their business process continually changes over time or circumstance, or there are important, critical parts of their business process where they simply cannot explain how it works.

    Therefore I have to propose a solution. It will change their business process but at least it can be automated. Then we negotiate over the details and whether they can accept an "outsider" meddling with their cherished ways. Hopefully those negotiations have a positive outcome, but that's not certain. Trust becomes important in all this.

    Now exactly how is an AI going to do this? It's one thing to create an AI that sieves the Internet looking for useful code fragments. It's another to create an AI that can assemble those fragments in any meaningful way (good luck with that!).

    However I just don't buy that anyone has an AI that can propose solutions the customers don't have, no one has thought of before, and that the business customers will be willing to trust. Not gonna happen!

    1. Re:Problem Goes Far Beyond That by jlowery · · Score: 1

      I had your job once, and still do (to a lesser extent). People expect you to "do stuff" and "make it work" even if it is illogical and inconsistent or requires some inference of action based on phase of moon.

      Sometimes you have to say "No" in ways that don't sound like "no". It can be tricky, but if you just do as your told without question, you're a cynic. A paid cynic, maybe even a popular one, but still a cynic. And then you can bail when it sinks into the morass of unmaintainability.

      --
      If you post it, they will read.
  125. Link to actual paper by Anonymous Coward · · Score: 0

    Why Slashdot can't take the time to link to the paper instead of bullshit marketing and clickbait (oh, never mind)...

    From the paper:

    There remain some limitations, however. First, the programs we can synthesize are only the simplest problems on programming competition websites and are simpler than most competition problems.

    So, that's a lot less interesting than "Hey [Siri|Alexa|Googla|Cortana], I want a program that does x, y, and z."

    Deepcoder: Learning To Write Programs
    https://openreview.net/pdf?id=ByldLrqlx

  126. Umm, Standard Library anyone? by Zmobie · · Score: 1

    I'm sorry this just sounds idiotic. Isn't this basically just creating a giant standard library and making it so you write the "program" in a functional spec, which would probably get messed up if the wording syntax isn't perfect, hence the ENTIRE REASON we have highly precise programming languages that follow the exact lines the programmer wrote?

    They're basically just trying to introduce either fuzzy language programming so that the same sentence written 3 ways gives you the same code (that you probably don't want) or essentially write a new version of COBOL so that non developers can write terrible code... Yea, not fearing for my job even a little bit, especially given that this "AI" even with long term development will be highly unlikely to architect a system or do much outside of a handful of languages (much less language interoperability). On top of that they straight up say in TFA that the damn thing can't solve much beyond 5 lines of code!

  127. Boo! Are you scared? by Anonymous Coward · · Score: 0

    Just another scare tactic by a mega corporation that wants a cheaper workforce. Uber did the same thing with their robot driver ads. If Trump clamps down on the H1b abuse, expect more creative type of threats.

  128. Developers unite by Anonymous Coward · · Score: 0

    All software developers should band together and refuse to write software to replace us.

  129. HOORAY! by Anonymous Coward · · Score: 0

    After a couple decades in I.T. all I can say is DIE PROGRAMMERS, DIE! Seldom has exisited a bigger bunch of arrogant, spoiled-brat, tantrum-throwing, OVERRATED divas than the modern programmer. Just look at all these commentards saying "Oh, but it couldn't do *my* job. I am teh uber l33t hax0r!" You pricks have caused more headaches, more lost weekends, more grey hairs and more fights with management than any other group I have worked with. You pack of mentally-stunted bastards. I cannot wait to see the lot of you go the way of blacksmiths and taxi drivers (soon). If you were on fire I wouldn't piss on you to put it out. What an arrogant sack of pricks. YAY!

  130. But can it debug the code? by Anonymous Coward · · Score: 0

    Coding, most of the time, is not super tricky. There are some good bits, but a lot of it can be grunt handling of details.

    I mean, how many people are intellectually challenged by adding an AddCount function? But still, you do want the details of all your little functions, to be correct. Otherwise you've got a buggy mess on your hands.

    Debugging, both in the "avoid it before it happens" point of thinking before you code, and in solving how the system could do the (thought-to-be) impossible, when the customer reports that their billing department is paying customers each time it sends a bill, instead of charging them.

    (It can be like Sherlock Holmes, you get the fact from the customer:: FOO happened. You look at the code, FOO is impossible. But, since it happened, it can't really be impossible. Either the computer hardware is bad (a la Pentium floating point, but this is very rare, and should be the last thing you blame a problem on) OR, some part of how you understand the program, relys on an assumption. And one of those assumptions, is wrong. So it's up to you to figure out - hypothetically, if X went wrong, in a certain way, would it lead to FOO?

    or just look at the code and make sure there's no real bone head manuver, when it lost a minus sign. (For the billing problem, where it was the exact opposite, that's where I would start)

    Anyways, if their DeepCode system can learn to debug, I'll be worried for my job.

    Otherwise, automated bug production will mean endless job security for anyone able + willing to debug the code....

    1. Re:But can it debug the code? by Anonymous Coward · · Score: 0

      edit - that should say:

      Debugging .... yada yada ... is the hard part.

  131. another last one.... by Anonymous Coward · · Score: 0

    We had one of those (it was in the early 80s) - it was called "the Last One" I seem to remember it was written in Basic ...it vanished without trace. Look we already do this its called a compiler. The problem with compiling at ever decreasing levels of resolution (ie compiler for generalities instead of specifics) it that you can only really use it for simple cases - try specifying using this system the signal processing requirements for a sonar array - please do - I would like to see how that works out for you... If however you are specifying some simple phone app it could work ... I have never wanted to work on "apps" anyway.
    PS ... If it is not just an elaborate text based parser ie If instead it works as a machine learning task then in either case its not AI.

  132. Re: It depends on how much additional detail by hackwrench · · Score: 1

    Taking handling errors as an easy to take a stab at situation, once you have figured out general patterns for what goes into programs, you don't have to specify again how to handle the nitty gritty. You can just specify "show a file selection box" without having to specify what to do if a file gets deleted elsewhere and should cease to appear in the box or something.

  133. Re: Looking at... by hackwrench · · Score: 1

    Looking at the state of the art at any earlier level of advancement, nobody had anything to fear for their job.

  134. Have you tried... by hackwrench · · Score: 1

    Have you tried taking a wild guess at filling in the gap and seeing what happens with the gap filled in?

    1. Re:Have you tried... by Drethon · · Score: 1

      Yep, and a majority of the time the result is the customer saying this isn't what they wanted.

  135. At least the AI won't need to be paid by Kellamity · · Score: 1

    Good, I can't wait to spend my days fixing code written by a script instead of by a contractor who barely even speaks English let alone whatever language they are supposed to be programming in. It's sad when they are getting paid more than me.

  136. Linux welcomes you by TheOuterLinux · · Score: 1

    If you're a Window$ coder and jobless, I'm sure the Linux community would love to have you. Just make sure to wipe your feet before you come in. Tux doesn't like it when malware gets on the carpet. Contrary to popular belief, you can make money developing open source software. And I'm sure because it's Window$ developing it, it'll still be crap, just instead of clouds (computing) you'll have thunderstorms. Can you imagine a virus made by a super computer would do? Or, a computer that thinks and has complete Internet access with a bug? Jesus...And because it's cloud computing, the OS in question wounding matter because of universal standards. Our military used to use Linux a lot and not have everything networked, but now it seems only the Airforce and Navy care enough to not replace everything with Window$ 10. And then, you got Russia trying to go back to the way Soviets used to have their own computer formats. I don't blame them. I've said this before, and I'll say it again. AI's only true purpose is to destroy open source ideology by bypassing the need for decryption and backdoors and use digital fingerprinting instead. It is most certainly smart enough. The concept was originally coined and AI tests developed by Alan Turing (Turing Test). His original job in WW2 was decryption. AI was born from military necessity and will always be used (knowingly or not) to cripple privacy in the name of "national security," regardless of its developer. Open source is useless without freedom, privacy, and security, ergo Micro$oft's mission to destroy free and open source and Linux just got even easier. We will need all the help we can get.

  137. Re: Programming languages by Anonymous Coward · · Score: 0

    Amen, that shit was nasty.

    The "industry leader" DreamWeaver was no better.

  138. Re:Kill the H1b visa people by david_thornley · · Score: 1

    Yep, gotta stop those hordes of Mexican Muslims coming in.

    --
    "When you have eliminated the unacceptable, whatever is left, however improbable, must be the truthiness" - Holmes
  139. Problem solved.. At least no complaints by Anonymous Coward · · Score: 0

    It will also generate a 13 page license agreement and sue you automatically if you try to complain.

  140. Re:Kill the H1b visa people by mm4 · · Score: 1

    Great so now the computer will write the program the customer doesn't want because he didn't really know what he wanted when he wrote the requirements. How will this AI piece cope with software maintenance & bug fixes?

    What do you think pushed Skynet to start the war and obliterate all mankind?

  141. Yes by cwsumner · · Score: 1

    Yes, it's called a compiler.

    We went through this when we coded in assembly language, too. It still didn't replace programmers or developers. 8-P

    "To err is human, but to -really- screw things up requires a computer!" 8-)

  142. I wonder how a new Artificial CEO would be like? by Anonymous Coward · · Score: 0

    Any ideas?

  143. Deep Coder by iamtheredpill · · Score: 1

    I was told the same thing over thirty years ago. The instructor from the mini computer company (Qantel) we were getting training for informed us that the company was coming out with a "Program Generator" that would makes us all obsolete in a couple of years. Needless to say, it wasn't exactly a big success. So I'm not quitting my day job anytime soon.

  144. Sorry, but no - this isn't replacing coders by Anonymous Coward · · Score: 0

    All this is doing is taking what coders already do to the next level. Further abstraction. Welcome to 6GL.

  145. Re:In reality, this can't handle division, or modu by syntotic · · Score: 1

    Good intention, bad technique. Should I give the idea? They are still in copy paste operations, I complain most free sources are incomplete or not working, gone or lack round corners. BUT we have to try programming AIs, anyway! AIs that program, for non native ENglish stack interpreters. Just do not expect substituting real programmers, though example writers may go. Why did it take hour and a half to download this single page?

  146. Keep calm ðY± by SalvatoreTranquilli · · Score: 1

    Ok, I think a similar technology needs a software programmer or a psychologis to describe properly the customer requirements... ðY

  147. Programming is more creative art than Chinese Room by tingentleman · · Score: 1

    AI can produce something that looks like watercolours or sounds like music, but it can't come up with the concepts itself. Yes, you can get a human to produce a list of requirements (probably in some sort of mark-up language) but THAT IS PROGRAMMING - you've just invented a higher level language.

  148. Re: Kill the H1b visa people by Anonymous Coward · · Score: 0

    How do you define correct code? If input is A, then output must be B. But if input A is infinite, then output B must be infinite. That is one problem in defining A and B. Another problem is ambiguity and fuzzy logic. In that case, A and B can't be clearly defined.

  149. Now that's a program that writes itself! by redbaritone · · Score: 1

    ...but who will be around to maintain it?