Microsoft and University of Cambridge have developed a machine learning system called DeepCoder that can steal code from other programs and use it to create it's own program. This A.I. will eventually be able to create a program from the suggestions of a person who doesn't know how to code. DeepCoder has learned a process called program synthesis where it would piece together lines of code to create a desired result like any programmer would. Machine Learning allows DeepCoder to quickly scour databases of code and assemble code according to probability of usefulness.
DeepCoder is becoming very efficient at finding code as it will search obscure programs that many people wouldn't have thought of. It gets faster each time that it is given a problem as it creates a database of code that worked. DeepCoder can create working programs in a fraction of a second. Right now the A.I. is limited to 5 lines of code, but using the right coding language, it can create fairly complicated programs. Others are working on similar tech like the Massachusetts Institute of Technology that has created a machine learning system that can fix broken software with working code from other programs.
Brockschmidt says that future versions could make it very easy to build routine programs that scrape information from websites, or automatically categorise Facebook photos, for example, without human coders having to lift a finger "The potential for automation that this kind of technology offers could really signify an enormous [reduction] in the amount of effort it takes to develop code," says Solar-Lezama. But he doesn’t think these systems will put programmers out of a job. 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.