![Avatar for JeremySagnes](https://cdn.rcimg.net/JeremySagnes/avatar-dc4c4e275bd6b263823ba82abce370e8.jpg?width=150)
![](https://cdn.rcimg.net/JeremySagnes/8982de77/70610cb361ae419fb37a1bbfd6244438.jpeg?width=300&quality=10&blur=20)
The history of IT is the scene of innovations of all kinds. New programming languages appear regularly. Natural selection eliminates much of it, but the advent of artificial intelligence and quantum computers could be a game-changer.
PHP, Ruby, Java, Swift, Python… For twenty years, new languages have appeared every year. After structured languages, object-oriented languages, or even languages dedicated to a specific field, the modes follow one another in a form of evolution that is ultimately very natural. Each developer, by gaining experience with existing languages, realizes what is not practical to create with his language, and imagines being able to do better in terms of readability or quality of the code. Each language has its strengths and drawbacks, and each developer has their own opinion on what the advantages of a language should be.
![](https://cdn.rcimg.net/JeremySagnes/8982de77/58cdd75bcc02a5db20f17fd4c6ad933c.jpeg?width=300&quality=10&blur=20)
AI and "no code" will not kill computer languages
New languages will continue to appear for a long time. The “no code” movement, which is making the buzz today , will certainly not mark the end of the developer, and even less that of computer languages. On the contrary, “no code” or “low code” approaches are new tools that are added to the means already available to companies to create their applications, and these approaches will undoubtedly not mark a breakthrough in the world of technology. development. Especially since these “no code” solutions must themselves be developed with “traditional” computer languages.
In ten, twenty or thirty years, will everyone be able to generate a computer application without mastering any language? This will probably be the case thanks to artificial intelligence, but the "no code" is only one of the additional tools which will make it possible to meet specific needs. In this sense, it is just one more evolution in the history of computer code, which originated in the perforated boxes of 19th century Jacquard looms!
The use of a language close to the material has become important again
In the early days of microcomputing, the installed power was very modest and a language like C, invented in the 1970s, made it possible to make the most of the components of the time. Since then, the increase in available computing power logically pushes languages towards more abstraction to, in a way, come closer to the way of thinking of humans. However, the evolution of computer languages is not linear and the most recent languages do not necessarily drive out the oldest. Thus, the C language is far from dead and, with the rise of connected objects and the Internet of things, it is even currently experiencing a resurgence of interest. It is chosen to develop applications that have to be executed on inexpensive and low-power components, which must consume as little electric current as possible to spare the batteries. These applications must be ultra optimized and, for all these reasons, the use of a language close to the hardware has become important again.
Low-level languages, like C, coexist with much more abstract languages like Java, C #, JavaScript or, more modern, the Rust language, closer to humans and allowing them to be more agile and produce code faster. . Perhaps the imminent arrival of quantum computers will profoundly change the situation and bring about a new generation of languages, optimized for this type of computer. But to program computers of classical architectures, current languages will obviously continue, and even will certainly continue to evolve.
The environmental impact of IT could also lead to the arrival of languages more specifically oriented towards energy savings, even if in the case of the Internet of Things, as we have seen, it has become a trend again. for this same problem.
![](https://cdn.rcimg.net/JeremySagnes/8982de77/e7c62da3f00bed1df44fef0caf560e52.jpeg?width=300&quality=10&blur=20)
I am wary of gurus who defend tooth and nail a preferred language regardless of the use case or the circumstances
The arrival of techniques from artificial intelligence will have a direct impact on the work of developers. Thus, we see a whole new movement appearing around the phenomenon "AI on Code", that is to say the development of artificial intelligence models capable of writing code. It is an extremely complex issue. Certain languages lend themselves more to an automatic generation than others, and one could attend a selection of languages well adapted to the training of artificial intelligences on this code. At the moment, we are only in the infancy of this approach, but as soon as convincing use cases emerge, one can think that there will be a very strong interest in this approach. In the near future,
![](https://cdn.rcimg.net/JeremySagnes/8982de77/f0f227cab51224977b15af507c675ace.jpeg?width=300&quality=10&blur=20)
Faced with this turmoil, a developer will have to be able to change language multiple times during his career. It is a frequent debate when it comes to hiring a developer: whether to choose a talent very sharp in his preferred language or a developer with solid skills in terms of language design, able to switch from one language to another. easily? I tend to opt for the second option: I am wary of gurus who defend tooth and nail a preferred language regardless of the use case or the circumstances. A good developer must know how to keep his mind open, and always be ready to learn a new language.
![](https://cdn.rcimg.net/JeremySagnes/8982de77/0f47356fd6e8f02d2d9d3864c81b9fdf.jpeg?width=300&quality=10&blur=20)
For the CIO, there is no single answer. IT departments need to limit the number of languages they use, if only to avoid multiplying the learning curves of their developers. From my point of view, a start-up in a rapid growth phase should focus on its product and not introduce new languages to simplify its skills management without hampering its development. Only very large companies, first and foremost the GAFAMs, can carry out multiple projects simultaneously, regardless of the language chosen by the developers. Even if the vast majority of companies do not have the resources to follow such an opportunistic model in technological terms,
![Avatar for JeremySagnes](https://cdn.rcimg.net/JeremySagnes/avatar-dc4c4e275bd6b263823ba82abce370e8.jpg?width=150)