Aller au contenu

L’IA générative, une sous-discipline de l’intelligence artificielle, concerne les applications où un ordinateur simule la capacité humaine à créer et à produire — qu’il s’agisse d’un langage humain ou d’expressions créatives humaines (comme le dessin, la composition de la musique, etc.). Le meilleur exemple d’une IA génératrice qui a fait des vagues récemment est ChatGPT, un modèle de grande langue (LLM) avec lequel les utilisateurs peuvent interagir en langage naturel. Un domaine dans lequel Generative AI est particulièrement prometteur se cache dans la façon dont nous écrivons notre code logiciel. Cet article explore les possibilités que Generative AI crée pour soutenir ce processus de développement logiciel — et son potentiel d’ouvrir des avenues pour écrire du code logiciel à plus de gens que jamais auparavant. Parallèlement aux possibilités qui s’ouvrent, le présent document examine également les risques liés à l’utilisation d’outils soutenus par le GENAI avec une surveillance humaine réduite et met en évidence des horizons potentiels à explorer si nous voulons parvenir à une utilisation plus équilibrée qui tienne compte de nos valeurs fondamentales de l’UE. 

Introduction

L’IA générative, une sous-discipline de l’intelligence artificielle (IA), concerne les applications où l’ordinateur simule, ou tente d’imiter, la capacité humaine de créer et de produire en langage humain et en expression créative humaine — comme le dessin ou la composition de la musique(Stokel-Walker & Van Noorden, 2023). Un exemple d’IA générateur qui a fait des vagues récemment est ChatGPT, un modèle de grande langue (LLM) avec lequel les utilisateurs peuvent interagir en tapant. La performance de ce LLM a étonné de nombreux chercheurs et le grand public, quant à la «réalité» des interactions (Maslej et al, 2023).

L’intérêt pour cette forme d’IA s’est déjà accru depuis plusieurs décennies, la recherche fondamentale étant bien développée (Reiter & Dale, 1997; Kandhasamy et Xie, 2004). Cependant, les applications sont restées limitées, avec un petit algorithme de preuve de concepts principalement dans la recherche — en grande partie en raison du manque de puissance de calcul ou de quantités insuffisantes de données de formation, nécessaires pour apporter à la technologie de qualité de vie(Maslej et al, 2023). Cela a changé ces dernières années. La période 2015-2016 a vu des mouvements pour mettre en commun les ressources et construire de grands ensembles de données et modèles systématiques, avec des efforts coordonnés dans l’industrie tels que OpenAI (fondé en 2015) et HuggingFace (fondé en 2016). Depuis la fin de 2022, la maturité de ces technologies a connu un énorme coup de pouce en raison de l’alignement entre la puissance de calcul, les algorithmes matures et des données suffisantes.

L’un des domaines où l’IA Générative est très prometteuse est celui de l’écriture de code logiciel. GENAI est déjà employé par de nombreux ingénieurs pour les aider dans leur codage (Sharma, 2021). Le simple texte humain leur permet d’écrire du code complexe en quelques secondes, accélérant potentiellement leur codage et leur programmation (Brady, 2023). Dans les outils d’IA générateur, des instructions textuelles (invites) peuvent être données pour demander à l’IA d’écrire du code pour créer certaines fonctionnalités. En conséquence, l’utilisateur d’un tel outil peut communiquer dans des invites de langage naturel plus spécifiques, sans avoir besoin de connaître les détails du langage de codage. De manière limitée et avec des instructions pertinentes, Generative AI — pourrait également générer les étapes de la logique derrière une application, définissant la structure générale d’un algorithme.

Naturellement, cela soulève de nombreuses questions sur la façon dont nous allons écrire notre logiciel à l’avenir, et quelles seront les compétences nécessaires pour cela. Cette section suivante de cet article plonge plus profondément dans cette question.

Développeurs de logiciels pour le marché du travail de l’UE

Depuis de nombreuses années, il y a une pénurie de travailleurs qualifiés dans l’industrie numérique. Une étude réalisée en 2021 par l’Alliance européenne pour les compétences logicielles identifie le rôle du «développeur» comme étant le rôle logiciel le plus demandé et indique la nature en constante évolution de ce rôle comme la raison de cette pénurie. Les compétences clés des développeurs sont la programmation et le codage, deux disciplines dans lesquelles le contenu du travail ne cesse de changer, ce qui pose un problème pour les organisations et rend difficile la mise à jour des compétences des employés. Le besoin croissant d’experts en TIC dans tous les secteurs pose des risques pour l’objectif de la décennie numérique européenne consistant à atteindre 20 millions de spécialistes des TIC en Europe d’ici 2030. 

Code, code, code: quelques terminologies et concepts de base

Une terminologie explicative est utile ici. Le développement de logiciels fait référence aux activités basées sur l’informatique, c’est-à-dire le processus de création, de conception, de déploiement et de support de logiciels (IBM, 2023). La phase de développement dans le développement logiciel se produit lorsque le programmeur commence à définir et à écrire les instructions pour l’ordinateur à suivre, dans le langage informatique souhaité.

Qu’est-ce que la programmation? La programmation fait référence à l’activité que les développeurs effectuent pour définir la logique du programme informatique, y compris les entités que le programme doit manipuler et les algorithmes qu’il doit mettre en œuvre. Les compétences en programmation sont donc étroitement liées à la logique et à l’analyse, à la conception et à l’abstraction, ainsi qu’à la pensée computationnelle. Lorsque les développeurs codent, ils écrivent les instructions pour que l’ordinateur implémente certaines actions que l’ordinateur doit effectuer. Les développeurs écrivent dans différents langages informatiques, qui leur fournissent des capacités différentes en fonction de leur structure ou de leur but. De plus, les langages informatiques continuent d’évoluer, ce qui en fait une tâche complexe pour les développeurs de se tenir au courant des derniers styles et tendances. Lorsque nous parlons de pénurie de compétences sur le marché du travail, nous pouvons nous référer à la fois aux compétences liées à la programmation, ainsi qu’à celles liées au codage. 

Soutien au marché du travail de l’UE 

Ces pénuries de compétences étant préoccupantes depuis plusieurs années, les décideurs politiques et les chercheurs ont investi beaucoup d’énergie dans le développement d’un soutien aux acteurs du marché du travail pour identifier et développer ces compétences chez leurs employés (potentiels). Certaines initiatives clés comprennent des cadres de compétences normalisés spécifiquement pour le contexte numérique. Le cadre de compétences numériques pour les citoyens, DigComp 2.2,(Vuorikari, Kluzer et Punie, 2022) est le principal cadre communément accepté dans l’UE qui identifie et structure les compétences numériques dont les citoyens ont besoin pour participer à une société numérique moderne. Le cadre européen de compétences en ligne (e-CF) est un cadre de référence standardisé de 41 compétences pertinentes et requises dans un contexte professionnel informatique. Le cadre identifie également 30 profils de rôles professionnels des TIC couvrant différents aspects du paysage de l’industrie numérique. Dans l’UE, il s’agit d’un cadre phare qui offre un langage commun entre les recruteurs informatiques et les experts informatiques.

Il existe également des cadres plus génériques avec des profils pertinents. Les cadres de compétences sectoriels par le biais du pacte pour les compétences rassemblent divers acteurs de l’industrie dans diverses alliances sectorielles afin d’identifier et de structurer les compétences nécessaires au développement de leur secteur. Dans une large mesure, il s’agit également de compétences numériques complexes, car l’industrie numérique touche tous les secteurs. En ce qui concerne l’entrepreneuriat, le cadre d’EntreComp (McCallum, Weicht, McMullan et Price, 2018) comprend des compétences tenant compte de l’utilisation efficace des ressources, qui comprennent également l’évaluation et la compréhension des besoins des ressources numériques et le développement des résultats numériques. Le contexte technologique changeant est continuellement intégré à ces cadres, avec ses dernières versions, y compris ses compétences sur le travail avec la technologie de l’IA. Par exemple, DigComp dans sa dernière édition, 2.2., inclut désormais également la connaissance des systèmes liés à l’IA.  

Actions de l’UE visant à promouvoir les compétences en programmation/codage 

En plus de fournir un soutien dans la dénomination, l’identification et le développement des compétences liées au développement de logiciels, les initiatives politiques visent également à rendre les carrières dans le secteur numérique plus populaires et plus connues. Pour susciter un plus grand intérêt pour la programmation et le codage, il existe plusieurs actions récurrentes de l’UE. LaSemaine européenne du code encourage les initiatives locales visant à encourager un plus grand nombre de citoyens à utiliser et à développer leurs compétences en matière de programmation. En travaillant avec des volontaires, les activités comprennent des campagnes de sensibilisation, des ateliers, des conférences, etc., organisées dans toute l’Europe, dans les langues locales et répondant aux besoins et aux contextes régionaux. En 2021, plus de 4 millions de personnes dans plus de 80 pays du monde entier ont participé à l’initiative, la plupart des activités se déroulant dans les écoles (Commission européenne, 2023).

L’ Institut européen de technologie et d’innovation (EIT) offre une plateforme permettant aux acteurs de l’industrie de se réunir pour innover dans les industries concernées dans un environnement sûr et ouvert. L’EIT Digital se concentre spécifiquement sur le soutien à l’innovation et à l’esprit d’entreprise dans l’industrie numérique (EIT Digital, 2020). En outre, de nombreux programmes financés par l’UE mettent l’accent sur l’amélioration des compétences numériques de la main-d’œuvre européenne pour l’industrie numérique: jetez un coup d’œil aux investissements massifs qui sous-tendent le programme DIGITAL Europe (7,5 milliards d’euros destinés à la transformation numérique de l’économie et de la société européennes). Un autre indice est le seuil de 20 % des investissements numériques dans les plans pour la reprise et la résilience des États membres de l’UE, qui a été dépassé

Le GENAI va-t-il améliorer la pénurie de compétences sur le marché du travail? 

L’arrivée de l’IA génératrice ouvre un monde d’opportunités pour la programmation et le codage dans le contexte du marché du travail. D’une part, GENAI pourrait rendre les compétences plus avancées (comme le codage) plus accessibles aux personnes: et 2023 pourrait s’avérer être un moment décisif — celui qui voit l’IA stimuler les compétences de codage des gens, rapidement, nous permettant de créer des outils numériques de manière plus efficace et efficiente. D’autre part, le GENAI pourrait également diminuer ses compétences en matière de codage, car il réduit le renforcement profond des connaissances et l’expertise à ce sujet. Les paragraphes ci-dessous explorent le contexte dans lequel le GENAI pourrait avoir un impact sur le développement de logiciels et ses implications pour le développement des compétences. 

Quelques contextes

Avant d’explorer quelles compétences seront pertinentes dans ce nouvel espace, il est bon de prendre en compte certains contextes dans lesquels les aspects du codage peuvent être affectés par l’IA génératrice.

Position du codage dans le processus d’ingénierie logicielle

L’ingénierie logicielle — comme d’autres formes d’ingénierie — est une science de la conception et suit largement un processus de recherche, d’idéation, de conception, de développement et de test pour passer de l’idée conceptuelle au produit tangible (Davis, Bersoff & Comer, 1988). En passant par ce processus, les connaissances et le savoir-faire sont acquis et par itération — en passant par le processus plusieurs fois — la définition du problème et les exigences peuvent être affinées, d’autres recherches de fond peuvent être faites, etc. Bien que, comme Despa, 2014 le souligne, il peut y avoir différentes approches (incrémentales, cascades, spirale, prototypage, etc.) de la façon dont ces phases prennent forme (par exemple, des différences de durée des phases, ou des résultats intermédiaires attendus, etc.). Chaque processus de conception comporte des composants essentiels. Voir la figure 1 ci-dessous pour une illustration des composants clés d’un processus de conception de logiciels. 

 

Dans ce processus, le codage — le processus d’écriture du code logiciel réel — se déroule principalement dans la phase de développement et de test. À ce stade du processus de conception, le problème et la solution potentielle ont déjà été définis, et des décisions de conception de haut niveau ont été prises. Le logiciel est ensuite produit dans la phase de développement, et testé dans la phase de test. Par rapport à d’autres disciplines d’ingénierie, les coûts de production des logiciels sont relativement faibles. Ici aussi, nous avons l’ «industrialisation» de la production de logiciels, où l’on s’efforce en permanence d’être encore plus rapide et plus rapide dans le développement, tout en veillant à ce que le matériel produit soit d’une certaine qualité (Humphrey, 1988). Certains moyens d’y parvenir sont, par exemple, le partage efficace de blocs de code (par exemple, les plates-formes de type référentiel GitHub) et, plus récemment, les plates-formes low-code/sans code, où les blocs de construction réutilisables sont utilisés comme point de départ pour aborder la conception de manière plus abstraite, en accélérant l’ensemble du processus (No-Code.tech, 2023; Adalo, 2023). Cela ouvre essentiellement le codage aux personnes qui ne sont pas qualifiées (et qui n’ont peut-être pas l’intérêt d’être qualifiées) dans la mécanique de l’écriture du code.

De l’autre côté de cette dimension se trouve «l’artisanat logiciel»,où la compétence technique ou l’artisanat de création de code devient une fois de plus important. Approchant la création de logiciels à travers les yeux d’un apprenti, ce mouvement stimule la fierté de la création de logiciels, valorise la tradition dans la création de logiciels, et met l’accent sur le génie individuel (Manifeste Software Craftmanship, 2009). Vous pourriez même le comparer à la façon dont nous abordons la cuisine à la maison et la cuisine dans une cuisine professionnelle. Dans nos maisons, nous considérons principalement la cuisson comme le processus de production de bons aliments. Lorsque la cuisine devient un «artisanat», elle implique de la discipline, de la qualité, de l’efficacité temporelle et un effort ciblé pour atteindre des sommets dans les produits de qualité. «L’artisanat» dans la cuisine implique de perfectionner les compétences de production et les ressources disponibles pour atteindre ce niveau d’excellence (comme on perfectionnerait leurs compétences culinaires — en utilisant des ingrédients de qualité, en perfectionnant les compétences au couteau, en créant de nouvelles techniques pour obtenir différentes saveurs et expériences, etc.)

Nous pouvons prendre ces mêmes idées, et les extrapoler à l’artisanat impliqué dans l’écriture et la production de code de qualité.

Prolifération du codage dans les emplois à forte intensité de connaissances  

Aussi complexe que cela puisse paraître, le codage ne se limite pas aux espaces de l’industrie des logiciels professionnels ou des TIC. Un fait sous-estimé est qu’une certaine forme de codage est nécessaire pour de nombreuses technologies professionnelles spécialisées dans le travail du savoir. Par exemple, si vous faites une analyse statistique, ou même en utilisant des fonctions Excel de base, vous devez déjà comprendre le code d’écriture sous une forme minimale au moins. Dans ce contexte, le codage est devenu comme d’autres compétences et littéracies (pensez: le langage humain et les mathématiques), où chacun a besoin d’avoir une compréhension de base et des compétences de production pour participer à la société (Burke, O’Byrne et Kafai, 2016). La différence réside dans le fait que notre compréhension du codage en tant que littératie n’est pas encore aussi avancée, ni aussi intégrée dans notre système scolaire que ces autres literacies (Rea, 2022). Le système d’enseignement primaire est construit autour de ces littéracies et ils sont essentiels à construire au-dessus des années ultérieures. Pourtant, la transition numérique est en train de changer cette rapidité, rendant le codage et la pensée informatique tout aussi nécessaires dès le plus jeune âge que d’autres littéracies.

Soutien technologique par rapport à notre compréhension générale

Donc, cela crée une inadéquation: D’une part, nous n’avons pas encore compris la complexité de traiter le codage comme une littératie, pas plus que nous ne l’avons intégré pleinement dans nos systèmes éducatifs (Vee, 2017). D’autre part, nous avons maintenant des outils très sophistiqués à notre disposition, nous permettant de créer, de concevoir et d’écrire du code. De plus, la nature de l’espace numérique est telle que tous ces outils sont pour la plupart accessibles (contre frais) à un large public. 
Pour illustrer cette inadéquation, considérez les applications de ChatGPT et comment elles sont perçues par les gens:

Lorsque vous demandez à ChatGPT d’écrire un texte, presque tout le monde pourra dire s’il s’agit d’un texte bien écrit (ne considérant pas le contenu de celui- ci pour le moment, mais uniquement la forme du texte en langage humain naturel).  

Lorsque vous demandez à ChatGPT de compléter un calcul mathématique, beaucoup dans le grand public seront en mesure de dire si cela a été fait correctement ou du moins si la bonne approche pour résoudre la question a été choisie.

Mais… lorsque vous demandez à ChatGPT d’écrire un morceau de code, peu de gens dans le grand public seront en mesure (encore) de dire si c’est correct.  

Comment GENAI peut pallier la pénurie de compétences sur le marché du travail

Le paragraphe ci-dessus montre l’un des domaines dans lesquels Generative AI pourrait changer la donne. Nous allons maintenant approfondir les problèmes actuels de la pénurie de compétences et examiner le potentiel du GENAI pour les atténuer.

Une première question concerne les grandes différences dans le niveau de compétence en matière de codage des compétences entre les personnes. Différentes personnes ont différents niveaux de compétence dans l’écriture de code, et il n’y a pas de niveau de base généralement accepté dans la maîtrise du codage. Il y a plusieurs raisons à cela:

  1. Étant donné que le codage et la programmation ne sont pas positionnés comme une littératie, ils ne sont pas intégrés dans l’éducation formelle tout au long du programme. Cela signifie qu’il n’y a pas d’accès général aux possibilités de codage et de programmation, ni une attente générale envers chaque individu de développer un niveau de compétence de base.
  2. Le développement de la compétence dépend en grande partie de l’intérêt personnel et de la discipline personnelle. Si vous voulez développer vos compétences dans ce domaine, vous devez rechercher des opportunités formelles et non formelles en ligne et hors ligne à travers des ateliers, des bootcamps, etc. Comme cela est largement en dehors de l’éducation formelle, il faut des efforts et du temps supplémentaires pour investir dans cette forme de développement des compétences.  
  3. La ligne de fond est importante ici: le développement des compétences en matière de codage dépend de l’investissement de temps et d’argent dans des occasions pertinentes de développer des compétences en codage. Cet investissement peut ne pas être possible pour tout le monde dans la société, car il y a un besoin d’infrastructure (matériel et Internet), de temps (en dehors du temps d’éducation formelle) et des coûts supplémentaires potentiels pour les logiciels ou les licences pertinents.

Comme dans de nombreuses questions relatives à l’inclusion numérique, il existe un écart important dans la société entre les démunis et les nantis dans ce domaine, les personnes vulnérables, les femmes, les personnes âgées et les personnes issues de milieux socio-économiques défavorisés étant très touchées (ONU, 2023).

L’IA générative pour le codage peut largement réduire le seuil pour que les gens investissent dans l’apprentissage du code. Comme il permet d’interagir avec l’ordinateur en langage naturel, quiconque peut formuler ses idées de logiciels en langage humain, pourrait en théorie écrire le code pour faire ce logiciel. Toutefois, les questions d’accessibilité (dans le temps et les efforts) demeurent: ici aussi, il est possible que le GENAI élargisse l’écart entre ceux qui le peuvent et ceux qui ne peuvent pas coder.

Une deuxième question concerne l’immédiateté des besoins en compétences des personnes en situation d’emploi. Le marché du travail a besoin de ces compétences numériques aujourd’hui et dans un avenir proche. LeCedefop prévoit un besoin de près de 979,600 techniciens TIC et 2,977,600 autres professionnels des TIC au cours de la période 2022-2035 (Cedefop, 2023). Cependant, l’acquisition de connaissances approfondies et le développement de ces compétences à des niveaux de compétence plus élevés prennent du temps, ce qui peut également constituer un obstacle à l’adoption du codage. Les bootcamps et d’autres types d’apprentissage à court terme mais intensifs sont efficaces mais nécessitent du temps et des ressources que tout le monde n’a pas nécessairement (Thayer & Ko, 2017). En outre, les employés n’ont pas seulement besoin d’atteindre un niveau de compétence de base, ils doivent également dépendre d’eux-mêmes pour l’amélioration continue de ces compétences.

Le GENAI a le potentiel d’atténuer ce problème dans une certaine mesure. L’accessibilité de la technologie dans le langage naturel peut abaisser le seuil pour beaucoup et fournir un soutien juste à temps pour trouver ce qui est nécessaire, rendant ainsi le codage et la génération de code plus efficace, et peut-être motiver les gens à l’utiliser. La technologie pourrait soutenir l’autoefficacité, facilitant et plus rapide la recherche de réponses lorsqu’elles sont bloquées, et créant un environnement dans lequel les apprenants souhaitent développer en permanence leurs compétences en codage et en programmation. Cependant, ici aussi, il est possible que ces technologies creusent l’écart entre ceux qui le peuvent déjà et ceux qui ne le peuvent pas. En outre, dans ce contexte, un outil de soutien basé sur le GENAI agit efficacement sur un système expert (c’est-à-dire que l’humain demande, crée leGENAI). Il est important de considérer ici quel niveau de surveillance humaine est nécessaire.  

Une troisième question porte sur l’organisation actuelle du développement des compétences dans le domaine du codage et de la programmation. Dans les contextes formels, les compétences en codage s’intègrent dans des ateliers ou des bootcamps — potentiellement autour de langages de codage spécifiques ou d’activités plus génériques basées sur des problèmes. Les contextes non formels dépendent des individus qui créent leurs propres parcours d’apprentissage à travers diverses ressources en ligne, mélangées à d’autres expériences hors ligne.  

Les outils GENAI peuvent augmenter ces activités avec un support juste-à-temps à faible seuil pour trouver ce qui est nécessaire, ce qui rend la génération de code plus efficace et plus efficace. Cependant, l’utilisation de ces outils repose toujours sur la détermination humaine de l’exactitude des réponses et de l’acceptabilité du résultat du logiciel. Le risque est que les outils GENAI puissent devenir un système de référence, où l’apprenant humain ne l’utilise que pour atteindre un objectif immédiat, sans développer une connaissance approfondie du codage.

Implications pour le développement des compétences dans le codage et la programmation à l’ère du GENAI

Il est clair que GENAI offre de nombreuses possibilités d’abaisser le seuil vers beaucoup dans le grand public pour commencer non seulement à concevoir des logiciels, mais aussi à mettre efficacement les logiciels à utiliser dans des contextes quotidiens. En fait, pour de nombreux apprenants, le seuil bas peut également être un facteur motivant pour s’engager dans le codage en premier lieu. Cependant, pour s’assurer que les humains développent encore des connaissances approfondies sur le codage — et ne voient pas seulement le GENAI comme un outil capable de prendre en charge la tâche désordonnée du codage — certaines précautions doivent encore être prises. 

Tout d’abord, il est nécessaire d’aborder le codage comme une littératie qui peut être intégrée dans tout le système éducatif formel. Bien que des efforts soient déjà déployés pour intégrer le codage dans les plans d’enseignement et les programmes d’études, un changement plus systémique est nécessaire (Rea, 2022; Vee, 2017). Les cadres clés sur les compétences numériques énumérés ci-dessus donnent un meilleur aperçu de la complexité de ces compétences et offrent des moyens d’adopter une approche plus nuancée pour les développer.  

Deuxièmement, les gens doivent également être conscients des limites de l’IA — ce qu’elle peut et ne peut pas faire, et plus encore, ce qu’elle devrait et ne devrait pas faire. De par sa nature, la technologie de l’IA prend en charge certaines activités décisionnelles des personnes. Bien que cela crée de nombreuses opportunités positives (par exemple, être capable de traiter avec beaucoup plus de données qu’un humain), il comporte également des risques graves, dont les gens doivent être conscients lors de l’utilisation de ces systèmes. Sur le plan politique, c’est la voie qui est soulignée. La dernière version de DigComp inclut la connaissance des systèmes d’IA en tant que compétence pour chaque citoyen. La loi de l’UE sur l’IA positionne les garde-corps dans cet environnement et clarifie les risques faibles, élevés et inacceptables liés à l’utilisation d’outils d’IA.  

Troisièmement, pour le codage spécifique, il est utile d’explorer quelques bonnes pratiques et lignes directrices. GENAI aura sans aucun doute un impact massif sur la pratique du codage. En théorie, cela abaisse le seuil et ouvre une opportunité pour plus de gens d’apprendre le codage — et en particulier ceux qui ont peut-être perdu la motivation en raison des détails techniques et de la mécanique de l’écriture du code. Pour utiliser efficacement ces outils GENAI, nous devons d’abord établir des guides et des accords appropriés sur la façon dont et quand ces outils peuvent être utilisés.

Dans toute utilisation de GENAI pour le codage, il est clair qu’un ordinateur va écrire du code que les gens utiliseront. Mais comment pouvons-nous nous assurer que nous pouvons faire confiance à ce code? Dans ce scénario, il n’y a plus de surveillance humaine absolue. En outre, quels sont les processus de contrôle qualité et de qualité mis en place pour garantir que le code GENAI reste digne de confiance? De nouvelles procédures de test sont-elles nécessaires dans ce nouveau contexte et à quoi ressembleraient-elles? Il est tout aussi utile d’ouvrir le débat sur ce qu’implique la confiance et quels sont les marqueurs pour indiquer cette fiabilité de l’IA. Une possibilité est l’utilisation de nouveaux labels de qualité, ou la spécification de l’utilisation de l’IA dans les codes éthiques tels que dans le secteur du journalisme où l’utilisation des outils d’écriture GENAI augmente (Raad van Journalistiek, 2023).

Enfin, il est important de continuer à reconnaître et à valoriser l’artisanat dans le codage et la programmation des logiciels. Pour de nombreux créateurs, le codage est le langage de leur métier qui leur donne des défis intellectuels et une satisfaction cognitive lorsqu’ils atteignent leurs conceptions, mais leurs réalisations sont largement cachées. Comment les rendre plus visibles et reconnaître leurs réalisations? Dans ces cas, nous ne devrions pas limiter notre vision à la valeur utilitaire du codage, mais apprécier la compétence et l’artisanat en elle aussi. En outre, c’est grâce à l’engagement avec la pratique de l’écriture de code que les gens développent une connaissance approfondie du codage, ce qui leur donne la base pour améliorer le langage du codage et créer de nouveaux langages améliorés pour le codage. En d’autres termes, si nous voulons continuer à améliorer le codage logiciel, nous avons besoin de suffisamment de personnes qui écrivent du code eux-mêmes. Une ré-appréciation de la compétence humaine ici est importante.

Avenues futures  

L’IA générative offre de nombreuses opportunités dans les domaines du codage et de la programmation de logiciels, ce qui peut permettre à un plus grand nombre de personnes de s’engager dans le codage et de créer leurs propres applications. C’est un énorme potentiel de démocratisation de la création de logiciels, c’est-à-dire de l’ouvrir à ceux qui n’ont peut-être pas été motivés à l’apprendre ou qui l’ont vue comme une possibilité pour eux-mêmes. GENAI peut également rendre le processus d’écriture de code plus efficace sur le temps et l’effort. Cependant, un inconvénient est que s’appuyer trop sur le développement automatisé du code sans surveillance humaine suffisante peut signifier une perte de qualité et des occasions manquantes d’améliorer les pratiques de codage.

En regardant vers l’avenir, des pistes générales d’exploration peuvent être vues. 

Le logiciel adapté à l’usage vient de la vision humaine, qui aligne les besoins perçus, les exigences techniques, avec la conception technologique, l’application et l’utilisation éventuelle. Les logiciels doivent encore fonctionner dans un environnement humain complexe, et les humains sont les plus capables de faire face à cette complexité. Cependant, il est essentiel que nous trouvions un équilibre entre les possibilités de codage automatisé avec GENAI et l’écriture humaine de code ou d’autres formes de supervision, qui assureront une compréhension humaine suffisante de ce processus et permettront de l’améliorer efficacement à l’avenir. Les processus d’assurance qualité dans le développement de logiciels sont déjà de plus en plus prolifiques, avec un passage à «Shift Left», c’est-à-dire s’engager avec l’assurance qualité plus tôt dans le processus de développement logiciel et poursuivre cela tout au long du processus. En d’autres termes, de nombreuses garanties de qualité pourraient être prévues avant que le stade de l’écriture efficace du code ne soit atteint. Le support GENAI pour l’écriture de code est ensuite intégré dans un processus de développement qualitatif plus large, où ses forces sont utilisées de manière optimale.


Mots-clés

IA générative, ChatGPT, pénurie de compétences, codage, programmation, développement logiciel

Télécharger 

Téléchargez l’article complet «Coding and programming skills in the age of GenerativeAI» et une bibliographie de ses références ici, et ci-dessous. 


À propos de l’auteur

Le Dr Kamakshi Rajagopal est un chercheur interdisciplinaire et consultant indépendant en conception et technologie éducatives, avec une vaste expérience dans les formats d’apprentissage en réseau et d’apprentissage social, soutenus par des technologies innovantes. Elle est titulaire d’une maîtrise en linguistique (2003) et d’intelligence artificielle (2004) de KU Leuven (BE). Elle a terminé ses recherches doctorales à l’Open Universiteit (NL) en 2013, en étudiant les réseaux d’apprentissage personnels et leur valeur pour le développement professionnel continu. Ses recherches actuelles portent sur l’étude de la complexité des environnements d’apprentissage et plus particulièrement sur la façon dont les enseignants et les apprenants peuvent être aidés à faire face à cette complexité. Le Dr Rajagopal a développé de multiples projets de recherche collaborative (financés au niveau national et européens) dans l’enseignement primaire, secondaire et supérieur avec des partenaires du secteur public, de l’industrie et de la société civile. Quelques exemples de ses projets portent sur le rôle des réseaux d’enseignants dans l’innovation éducative, les cercles de thèse dans l’enseignement supérieur, la mesure multimodale dans les espaces d’apprentissage hybrides collaboratifs et l’intégration de la mobilité virtuelle dans les établissements d’enseignement supérieur. Depuis 2023, elle travaille sur l’apprentissage et le développement en IT & Business Consulting.