The AI is invited into the programming of applications. The short-term promise: to improve coding productivity, or even automate certain phases, particularly in software testing.
Will AI Replace Developers?
“Any company leading application projects of any importance should explore the growing number of development tools augmented by artificial intelligence as an opportunity to accelerate the speed of deliverables and optimize their quality,” said David Schatsky, managing director at Deloitte. With a longer-term vision, some research laboratories are already working on AIs that would make it possible to go even further.
First area invested by AI in software development: help in writing code. Like entering a query in Google, it consists of offering personalized suggestions as you type. Today, the feature is well known to developers. A pioneer in the field, Microsoft integrates this device in 2018 into the Visual Studio IDE as well as VSCode, its open source version.
Taking the form of an extension called IntelliCode , this brick of natural language processing (NLP) will draw its knowledge from hundreds of open source projects on GitHubdisplaying rating levels of over one hundred stars. What to pull the quality upwards by directing the user towards the best practices of the sector.
At the same time, IntelliCode allows you to create ad hoc learning models to benefit from personalized suggestions not only based on public open source code, but also on private source repositories.
Start-ups are stepping up to the plate
In the shadow of Microsoft, start-ups are advancing alternatives. Among the most prominent: the Israeli Codota . Like IntelliCode, its solution revolves around NLP models fed by both public code and private repositories. Teams of developers from big names in Silicon Valley, such as Amazon, Airbnb, Atlassian , Google or Netflix , use it. In December 2019, the company got its hands on one of its main competitors, its fellow citizen TabNine .
Founded a year after Codota, in 2014, and posting 21 million dollars raised to its credit, the Californian Kite adopts a position that is in all respects similar. To complete its entry-level AI based on open source data sets, in July 2020 it launched an offer tailored to train models on the basis of internal projects.
Same logic as Microsoft and Codota. Called Team Server, it is based on a much more advanced deep learning infrastructure. It takes into account up to 100 million parameters, against 4 million for the entry-level service. A technological leap that allows Kite to carry the completion of two to four successive keywords, against only one for IntelliCode. To date, the San Francisco-based company claims 400,000 users.
There is one point on which Microsoft is no match for Codota and Kite. Its solution is limited to Visual Studio. Unlike the two start-ups, whose offers are agnostic in terms of the development environment. Both support Android Studio, Jupyter, PHP Storm, PyCharm, RubyMine, Vim or Sublime. Not to mention Visual Studio Code which is one of the most used IDEs. When it comes to integrations, Codota stands out by supporting the very popular Eclipse infrastructure.
In the software test, two young American shoots stand out quite clearly: Functionize and Mabl . Founded successively in 2015 and 2017, they respectively raised $ 19.2 million and $ 36.1 million. As its name suggests, the first automates functional testing. Its offer revolves, again, around an NLP engine .
An algorithmic model that is designed to translate test specifications written in natural language (in this case in English) into machine-executable scripts. As for Mabl, he targets the same goal, but with a very different approach. Its tool generates the test scripts by analyzing the graphical interfaces and the scenarios played on the screen by the developer.Applitools .
Founded like Codota in Israel (in 2013), this publisher, which claims $ 41.8 million in funds raised, relies on image recognition to analyze application screens, identify variations or regressions, and from there automate the creation of functional tests. In March 2021, Applitools was acquired by the Thomas Bravo Fund for $ 300 million .
Following in the footsteps of these actors, the French company Ponicodeis positioned in the automation of unit tests. Installed at Station F, it was created by Patrick Joubert.
This serial entrepreneur has already distinguished himself by launching the consulting company Beamap and especially Recast.ai, a chatbot platform that he sold in 2018 to SAP. With Ponicode, Patrick Joubert is now putting NLP at the service of developers. The company completed a first fundraising of 3 million euros in July 2020. The principle of its solution? After analyzing the code, its deep learning engine, currently limited to VSCode, suggests test values based on the software functions identified.
Towards the end of “standard” developers?
In the meantime, a news is looming on the horizon that could well call into question this discourse: the irruption of AI on the front of development without code. Based until now mainly on fairly traditional rule engines, no-code (or low code) should quickly turn to machine learning.
Intel has already tackled the problem. In association with the Georgia Tech Institute, the founder has started to set up an intelligent assistant focused on program optimization, called MISIM (for machine inferred code similarity).
Upstream, he learns to identify the task for which an application is designed. Then via a machine learning infrastructure analyzing extracts from sources on the basis of millions of other software of the same purpose, MISIM is able to recommend a code that is supposed to be more efficient, or even more efficient overall.