Background

Microsoft Created DeepCoder, An AI That Is Able To Code

AI

Researchers have a dream that one day humans can create Artificial Intelligence (AI) with the ability to code, or write computer programs on its own. It has been a long goal for computer scientists to make computers do what humans could do.

Getting one step closer to actualization, Microsoft Research in conjuction with Cambridge University, has created an AI called DeepCoder. What it does, is taking an input and an expected output, to then fill the gaps using pre-created codes that it believes can create the desired output.

The approach is called "program synthesis," a way in which it searches and integrates the best source code by reusing and combining existing code taken from other programs in order to create a new application.

This is somehow similar to what most computer programmers do when they browse online for codes, and then copy-pasting some codes they think might work.

While DeepCoder is mimicking what human programmers do by guessing what code should work, it's more than just that. According to the researchers, DeepCoder is more efficient in coding than humans, and it's a lot faster too.

What's more, it uses machine learning to sort the fragments by usefulness to determine which code is the best to implement. The system also learns, meaning that it's not only initially many times faster than humans or previous systems, but it also gets faster the more it works.

Typing

In its initial state, DeepCoder is only able to solve problems that are around five lines of code. So not much to expect in its early days.

However, the technology can be promising as a system like DeepCoder could enhance human programming by taking over the most tedious work and completing it in a fraction of the time.

"Ultimately," said Marc Brockschmidt, one of DeepCoder's creators at Microsoft Research in Cambridge, UK. "The approach could allow non-coders to simply describe an idea for a program and let the system build it."

There has been numerous controversies involving AI and also robotics, especially regarding the possibilities that they can someday replace humans and ruining the economics. While robotics replace human physical labor, such as in factories, people are also worried that AI can replace intellectual labor.

While the future is yet to be written and concerns are not yet justified, computers are starting to take its role in hurting human workers. And in concerning the DeepCoder AI, humans coders are now starting to have a competitor.