The new artificial intelligence tools, led by ChatGPT, will revolutionize the creation of text, images, videos or music. His ability to write code has had less of an impact, but it’s just as awesome. As in other disciplines, in recent months there have also been apocalyptic articles written by experts entitled “The End of Programming” either “ChatGPT will replace programmers in ten years.” The key, however, is in the details: what exactly is it capable of programming?
First, it is capable of solving challenges that deserve a lot of impact. Magazine Nature published an article this wednesday from DeepMind (Google) researchers where they speed up by 70% the efficiency of a C++ language algorithm that had been in use for decades: “We demonstrated how artificial intelligence can go beyond the current state of the art by discovering hitherto unknown routines,” he says Article. “What is really interesting is that the system learned to write a series of instructions without anyone telling it how,” explains Armando Solar-Lezama, a researcher at MIT (USA) who had access to the article before its publication.
“They told him what instructions he could use and he started trying combinations. The only thing they told him is if they were good or bad. Only with that the system was able to infer what were the instructions that it had to write and connect to generate the program”, adds the expert on AlphaDev, the program created by DeepMind.
These advances prove that artificial intelligence (AI) overcomes complex challenges. But how far can it go without human intervention? the article of Nature he explains that they posed the problem as a game for the machine, which had been specifically trained, and the humans also guided the process. It is important, but not an absolute revolution. “People are very excited,” continues Solar-Lezama. “With these AI models we have seen that they can suddenly do things that were previously considered very difficult. But one question we have now is to see what they can do well and what they can’t. Based on that, how can we reimagine programming to make it more effective? There are already tools that are beginning to help programmers, but only as a helper.”
It’s like a smart learner
That word “assistant” or “helper” is often repeated in conversations with programmers and computer teachers, as if AI were a smart learner. Although the news is shocking, few foresee an earthquake in the trade. As explained by Brigitte Pientka, a professor at McGill University in Montreal (Canada) and co-author of an article showing that ChatGPT I would get an A in an introductory programming course.: “ChatGPT can be surprisingly and deceptively good for generating short programs. But it is not very reliable for now. I would say that in the future it will be more important to be able to evaluate and validate automatically generated programs to guarantee a level of security and reliability”. Programmers, therefore, will continue to be just as necessary, perhaps with a different role, according to Pientka: “Saying that we no longer need computer scientists thanks to ChatGPT is like saying that thanks to calculators and Excel we don’t need mathematicians or statisticians.”
“Saying that we no longer need computer scientists thanks to ChatGPT is like saying that thanks to calculators we don’t need mathematicians”
Brigitte Pientka, McGill University
The same specialized magazine that published in January on the “end of programming” published an article this weekend entitled “AI does not help programmers”, of the famous professor Bertrand Meyer. As a programmer, Meyer writes, he could use an assistant to keep him in line and alert when he strays. And he continues: “But that’s not what I get [de una IA]. I get the equivalent of a cocky, intelligent, well-read grad, also polite and quick to apologize, but completely, and hopelessly, careless and unreliable. This supposed help is of little use to me”.
In developer forums like Hacker News there are dozens of open discussions about how and how much ChatGPT and other more specific applications help. The variety of responses is enormous, but the hopeless enthusiasm of a few months ago has waned. Solar-Lezama puts it in the context of another stage in the history of programming: “Programming is going to change as it has already changed in the last 20 years. And in the previous 20. Today is different than when I graduated. New programming languages also arrived that made it possible to automate things that people did by hand. It was easy to reuse code someone had written. Today I can write extremely complex programs in Python in 10 minutes that a generation ago would have taken months for a large team,” he adds.
As society becomes more digital, it’s critical to improve the code powering the world’s computing.
Today in @Naturewe present AlphaDev, an AI system using reinforcement learning to discover enhanced computer science algorithms.
How does it work? 🧵 https://t.co/2ukGaPey5w pic.twitter.com/dSedrv7eik
—Google DeepMind (@DeepMind) June 7, 2023
It doesn’t save that much time
AI has become that assistant that allows you to reduce somewhat the time spent on programming work. But not in extraordinary amounts: “At first I was surprised to find that ChatGPT delivered software code well,” says Daniel Lemire, a professor at the University of Québec (Canada), who does advanced programming work. “Copilot [una herramienta de Microsoft] he can write entire sections of code, as if he could read my mind. But sometimes he’s wrong. It is difficult to measure the time that I save maybe 10%. Writing code is a small fraction of programming, which includes design, testing, benchmarking, discussions, specifications.
“It is going to change programming as it has already changed in the last 20 years”
Armando Solar-Lezama, MIT
For these reasons, the job of a programmer seems at the moment a reasonable bet for the future. Despite the advances in software automation thus far, programmer employment is growing. The only certainty is that in the future there will be more code, largely thanks to the agility that AI allows, but no less programmers. “I predict that we will continue to hire more people, regardless of advances in AI,” says Lemire. “Jobs will be different, even brand new, but there won’t be a dip anytime soon because of artificial intelligence. Students who aspire to a career in the software industry need to stay the course,” she adds.
The efficiency of programmers, not their replacement, will be the great advantage of this revolution, according to Stephen Piccolo, a professor at Brigham Young University (USA): “Surely some companies will hire less, at least initially, while the implications are understood of technology. But in the near future, this technology will make programmers more efficient instead of replacing them.”
Another of the repeated aspirations that AI could allow is programming in natural language: asking ChatGPT in Spanish to write the necessary code to create an application, a website or a graphic. Although something can be done, it will also be limited in scope for now. “Natural languages are full of ambiguities,” says Emily Morgan, Professor of Linguistics at the University of California Davis and co-author of an article on how these systems find computer bugs. “On the contrary, programming languages have to be unambiguous. So we want our programming languages to be unambiguous.”
But you can request something in Spanish that ChatGPT converts into code. The problem then will be to find or iron out the problems: “We’re moving towards using natural language interfaces (like ChatGPT) to help generate much of our code,” says Morgan. And he explains: “You can ask ChatGPT things like ‘generate a template for a website’, but it will still generate code or HTML. You will need the natural language to be translated into an unambiguous programming language.”
You can follow THE COUNTRY Technology in Facebook and Twitter or sign up here to receive our weekly newsletter.
Subscribe to continue reading
Read without limits
#ChatGPT #programmers #efficient #replacing