Until recently, programming was a job reserved for humans. But this might change in the near future.
In February, Google DeepMind launched an artificial intelligence computer program that acts as a software developer. The algorithm has been named AlphaCode.
“AlphaCode can be compared to Google Translate, but instead of translating between two natural languages, such as Norwegian and English, AlphaCode can translate from a task description to a program code”, Morten Goodwin says.
He is a professor at the University of Agder and an expert on artificial intelligence.
Artificial intelligence is computer programs that behave intelligently. These programs are often trained with massive amounts of data. In recent years, a number of such smart programs have developed, from language algorithms that can express themselves almost like humans, to systems that help doctors make diagnoses.
One occupational group, on the other hand, has had few tasks automated: the programmer. Until now.
A programmer, or software developer, writes program code in a language the computer understands. Websites, apps and computer programs are written in program code, and there are often thousands of work hours behind each of those.
“It requires good analytical skills and a lot of experience to become a good programmer. One small error can corrupt an otherwise fantastic computer program. And until recently, that job was reserved for humans. Is it time to welcome an artificially intelligent programmer?” Goodwin asks.
In simulated programming competitions, AlphaCode ranks better than 41 per cent of the human participants. This is significantly better than any previous algorithm.
“We can enter a task text in AlphaCode, and the algorithm spits out the program code. But there is still a long way to go before the algorithms outperform humans”, the professor says.
Because no matter how impressive AlphaCode may seem, it has major limitations.
Most computer programs have thousands of lines of source code. AlphaCode creates programs that have barely more than a few hundred lines.
“The longer the programs get, the more unfocused AlphaCode becomes. Large computer programs become comically awkward and ridiculously bad”, Goodwin says.
The algorithm makes thousands of attempts before it finds a program code that works, while human programmers work systematically through a code.
"The numerous attempts AlphaCode has to make are most reminiscent of the thought experiment about an infinite number of monkeys, with an infinite number of typewriters, who will sooner or later write Ibsen’s collected works," Goodwin says.
However, he believes that Google's innovation is on par with a number of other impressive intelligent algorithms that have appeared recently.
“Artificial intelligence is emerging as a powerful and impressive tool in field after field, and programmers are not the only ones who have their everyday lives changed. Like the internet made its entrance in the 1990s and mobile apps in the 2010s, we see artificial intelligence entering and revolutionising new fields. This is how the digital world is changing”, Goodwin says.