Vous êtes nouveau sur Developpez.com ? Créez votre compte ou connectez-vous afin de pouvoir participer !

Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Vous n'avez pas encore de compte Developpez.com ? Créez-en un en quelques instants, c'est entièrement gratuit !

Si vous disposez déjà d'un compte et qu'il est bien activé, connectez-vous à l'aide du formulaire ci-dessous.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

La programmation peut-elle être automatisée ?
Une analyse du créateur du langage de programmation Leaf

Le , par Patrick Ruiz

100PARTAGES

10  0 
Les progrès de la robotique et de l’IA mettent chaque jour un peu plus en danger certains postes de responsabilités réservés aux hommes dans les entreprises. Tout récemment au Japon, 34 employés d’une compagnie d’assurance perdaient leur travail au profit de l’IA Watson d’IBM, preuve que la robotique et l’IA commencent à remplacer les humains. Du côté du Royaume-Uni, il est anticipé que 30 % des emplois seront automatisés d’ici à 2030 ; on parle ici d’emplois dans des secteurs comme l’industrie manufacturière, le commerce, la finance et les assurances, etc., mais il est rarement fait mention de la programmation. Cela veut-il dire que la programmation serait exemptée de la menace que constituent la robotique et l’IA ? C’est à cette question qu’a essayé de répondre Edaqa Mortoray, le créateur du langage de programmation Leaf, et un développeur Fuse.

Automatisation et robots

Edaqa Mortoray débute par une virgule dans l’industrie manufacturière pour en extraire une définition de la notion d’automatisation, celle bien connue qui stipule qu’il s’agit du processus qui consiste à faire passer une matière d’un état A (matière brute) à un état B (produit fini), ce, en se servant de machines. Le parallèle avec l’univers de la programmation lui permet ensuite d’identifier le produit fini à un exécutable à faire tourner sur une plateforme donnée, la matière brute au code source, et la machine à un compilateur, puisque c’est celui-ci qui est chargé d’opérer la transformation. Pour rester en phase avec ses développements, nous avons jeté un œil à l’utilisation du célèbre compilateur gcc (cf. figure ci-dessous).


Une unique utilisation de la commande gcc –o hello.exe hello.c permet tour à tour d’intégrer le texte des fichiers d’entête au code source (Preprocessing), de compiler le fichier obtenu, de l’assembler, puis de le lier à des bibliothèques pour obtenir un exécutable. Quatre étapes pour lesquelles l’intervention humaine n’a pas été nécessaire, et dont la répétition deviendrait vite fastidieuse pour un opérateur humain.

C’est là tout l’intérêt, d’après le créateur du langage de programmation Leaf, de disposer d’une machine (le compilateur) qui se chargera, chaque fois qu’il sera nécessaire, de passer ces étapes en revue pour fournir automatiquement un exécutable, vous évitant au passage beaucoup de travail. Dans l’industrie manufacturière, on voit généralement des robots effectuer des tâches de nature répétitive à longueur de journée ; le parallèle à l’univers de la programmation permet donc de percevoir le compilateur comme un robot dans cette analyse.

Limites des robots actuels

D’après Edaqa Mortoray, même si le compilateur précédent ôte déjà à l’humain beaucoup de sa charge de travail, l’idéal serait qu’il soit capable de faire plus, c’est-à-dire produire lui-même le code source dont il a besoin pour générer un exécutable. Il faudrait pour cela qu’il soit selon lui doté d’aptitudes cognitives suffisantes pour réceptionner les spécifications techniques d’un projet, les transformer en code source pour en faire un ou des exécutables, toutes choses qui vont bien au-delà des performances de la meilleure des IA disponibles actuellement sur le marché selon lui.

Effectuer des tâches à caractère répétitif, voilà selon Edaqa Mortoray le rôle qu’est censé jouer un robot dans la programmation, rôle qui ne s’écarte finalement pas de celui qu’on lui attribue généralement dans l’industrie manufacturière. De ce point de vue donc, beaucoup de tâches de programmation ont déjà été automatisées et devraient continuer de l’être dans des domaines qui requièrent que l’on dispose de machines capables de rechercher, de comparer, etc., ce, sans arrêt. Il entrevoit l’utilisation de ces robots pour des applications comme les analyseurs de code statique ou autres outils de refactoring qu’ils serviraient à rendre plus performants, mais s’inscrit en faux contre la possibilité de les voir remplacer l’humain dans ce rôle de programmeur, du moins, dans un futur proche.

Sources : Blog Edaqa Mortoray, NTU

Et vous ?

Que pensez-vous ?

Partagez-vous cet avis ?

Voir aussi :

L'automatisation des tâches ou l'automatisation des emplois ? les robots vont-ils bientôt commencer à mettre l'homme au chômage ?

Un développeur est licencié après avoir automatisé ses tâches de programmation pendant six ans, il découvre qu'il ne sait plus écrire un bon programme

Une entreprise chinoise remplace 90 % des employés d'une usine par des robots, et voit sa production augmenter de 250 %

Une erreur dans cette actualité ? Signalez-le nous !

Avatar de NSKis
En attente de confirmation mail https://www.developpez.com
Le 29/03/2017 à 12:29
Cette histoire me rappèle une entreprise qui a décidé de faire des économies sur son informatique: Elle a licencié son équipe de développeurs et a sous-traité leur travail à une société de développement informatique en Ukraine.

Au final, la société en question a dû engager des mecs à l'interne pour "pondre" les spécifications décrivant le travail à faire réaliser par les ukrainiens. Pas des spécifications décrivant en gros les fonctionnalités désirées mais fournissant une description détaillée permettant de découper le projet en une multitude de mini-développements "faciles" à tester et à vérifier.

Résultat???

Bingo!!! Au final, la société s'est retrouvée avec plus de "spécificateurs" que précédemment de développeurs et a juste perdu son indépendance et ses compétences
17  0 
Avatar de Mimoza
Membre averti https://www.developpez.com
Le 29/03/2017 à 10:29
Le même en V.O. :

12  0 
Avatar de Shepard
Membre éprouvé https://www.developpez.com
Le 29/03/2017 à 10:06


(http://www.commitstrip.com/en/2016/0...-precise-spec/)
11  1 
Avatar de Ryu2000
Membre extrêmement actif https://www.developpez.com
Le 29/03/2017 à 10:36
Citation Envoyé par Patrick Ruiz Voir le message
Que pensez-vous ?
Il existe beaucoup de métier plus facilement automatisable que les professions de l'ensemble "programmation".
Qu'on commence par automatiser les banquiers, les traders, les assureurs, etc.. (il faut commencer petit)

Citation Envoyé par Patrick Ruiz Voir le message
Partagez-vous cet avis ?
On ne connait pas les limites de la technologie.
Si on parlaient de la technologie actuel à une personne de 1980 il aurait peut être du mal à nous croire (on se balade avec un petit appareil tactile, équipé de 2 caméras, un micro, un GPS, connecté à un réseau mondial, si ça se trouve les smartphones d'aujourd'hui sont plus performant qu'un super calculateur des années 80).

C'est possible qu'un jour en exprimant un besoin, un programme va créer un programme pour répondre à ce besoin.
Le problème c'est qu'aucun client n'arrive à exprimer un besoin correctement, donc ça ne sert à rien...
9  0 
Avatar de r.morel
Membre confirmé https://www.developpez.com
Le 29/03/2017 à 11:57
Citation Envoyé par Ryu2000 Voir le message
C'est possible qu'un jour en exprimant un besoin, un programme va créer un programme pour répondre à ce besoin.
Le problème c'est qu'aucun client n'arrive à exprimer un besoin correctement, donc ça ne sert à rien...
C'est exactement çà ! Mais tout le monde croit que c'est simple.
Le pire est que c'est universel...
9  0 
Avatar de paidge
Membre éprouvé https://www.developpez.com
Le 29/03/2017 à 12:14
8  0 
Avatar de pierre-y
Membre éprouvé https://www.developpez.com
Le 29/03/2017 à 12:36
On devrait plutôt s'inquiéter quand une I.A. va se mater la série des films terminator et se prendre soudain d'une folle passion pour l’électronique et la soudure^^.
8  0 
Avatar de Marco46
Modérateur https://www.developpez.com
Le 30/03/2017 à 12:16
Citation Envoyé par paidge Voir le message
Un grand moment de propagande ce dessin.

Le principe de l'uberisation c'est de substituer une relation de client / fournisseur au salariat classique tout en forçant ses fournisseurs à adopter des formes juridiques permettant le dumping social aka le statut d'autoentrepreneur. Uber ne paie donc pas de cotisations sociales et force ses fournisseurs à ne pas en payer non plus par le jeu de la concurrence (dumping social). Ainsi l'ensemble de cette chaine économique ne contribue plus à la solidarité nationale (osef des retraites, osef des assedics, osef de la sécurité sociale).

In fine, la technologie n'est pas la seule responsable de l'existence de Uber. C'est l'existence du statut d'autoentrepreneur qui permet à Uber d'exister en France, pas seulement l'évolution technologique. Pas de statut spécial qui ne paie pas de cotisation = pas de uber. Et de facto, cela autorise Uber à exercer une concurrence déloyale avec les Taxis qui ont bien raison de gueuler (qu'ils soient freelance ou salariés, eux ils n'ont pas le choix de payer ou pas les cotisations).

Comparer ce que fait Uber avec l'invention de l'imprimerie c'est vraiment ne rien comprendre du tout à l'uberisation.
8  0 
Avatar de DonQuiche
Expert confirmé https://www.developpez.com
Le 06/04/2017 à 18:15
Citation Envoyé par Kapeutini Voir le message
Quand à nous, codeurs et autres penseurs de l'algorythme, au bit de notre code nous pouvons chanter que les futurs maitres du monde,
ce ne seront plus les banquiers et les comptables mais nous les pisseurs de codes :-)
Je prends les paris et je mise sur les banquiers.
6  0 
Avatar de Ryu2000
Membre extrêmement actif https://www.developpez.com
Le 29/03/2017 à 12:15
Citation Envoyé par Aiekick Voir le message
c'est un plaisir de programmer. donc pourquoi laisser a un robot ce qui me plait..
C'est pas le développeur qui va demander "S'il vous plait, remplacez mon job par une intelligence artificielle, merci.".
C'est les patrons qui se disent "une intelligence artificielle nous coûterait moins cher qu'un développeur".

Ça me rappel le professeur Farnsworth dans Futurama :

The First Robot Capable of Qualifying for a Boat Loan

Peut être qu'il serait plus facile de programmer un commercial...
4  0