Sites Inria

Le 06.02.2017
Par :
Cyril Fiévet - Usbek & Rica

Pourquoi il faut enseigner le code informatique à l’école

[Copublication] Dans plusieurs pays industrialisés, enseigner l’informatique, mais surtout apprendre à coder, sont devenus des priorités nationales. Comment le faire et pourquoi ?

Barack, dessine-moi un carré

Aux États-Unis, on ne badine pas (ou plus) avec l’importance du code. « Obama est le premier président à écrire un programme informatique », gloussait Wired en 2014, montrant le président entouré de jeunes élèves, et écrivant lui-même un programme « qui dessine un carré à l’écran ». Démago ? Peut-être. Anecdotique ? Pas tant que ça.

Car le président a été entendu. L’importance de l’éducation informatique à l’école primaire et secondaire (regroupées sous l'appellation "K-12", élèves de 4 à 19 ans) est reconnue par la loi depuis 2015. Apprendre à coder fait désormais partie du paysage (et des programmes scolaires), tout en étant soutenu par de vastes initiatives nationales, comme Code.org, une association lancée en 2013, avec des résultats impressionnants. En septembre 2016, elle annonçait avoir formé 43 700 enseignants qui pourront diffuser l’apprentissage du code à plus d’un million d’élèves, y compris dans 2000 écoles jusqu’alors dépourvues de tout enseignement informatique. Et l’association promeut aussi son "Heure de code", des événements offrant aux citoyens de tous âges de découvrir brièvement la programmation informatique. Plus de dix millions de personnes s’y sont essayé, avec quelques 283 327 596 heures de codes dispensées – soit plus de 32 000 années dévolues à l’apprentissage de l’informatique.

D’autres pays ne sont pas en reste. En Estonie, le programme Proge Tiiger a lancé dès 2012 l’apprentissage du code (dans une vingtaine d’écoles pilotes), pour les enfants à partir de sept ans. Au Canada, l’opération "Canada learning code", démarrée en octobre 2016, a pour ambition « d’enseigner à coder à dix millions de Canadiens d’ici à 2027 ». Elle a déjà formé plus de 50 000 personnes et propose de multiples modules, adaptés à tous les âges.

La Grande-Bretagne est aussi pionnière en la matière. Depuis septembre 2014, l’apprentissage de la programmation informatique y est inclus dans les programmes des écoles primaires. Et en mars 2016, une vaste (et innovante) initiative montée par la BBC enfonçait le clou : la distribution gratuite, dans les écoles, d’un million d’ordinateurs miniatures (“micro:bit”, une version simplifiée à l'extrême d'un PC, au format carte de crédit, similaire au Raspberry Pi) conçus spécifiquement pour apprendre à programmer.

 

Monsieur le Président...

En France, la prise de conscience de l’importance du sujet semble avoir culminé en avril 2014, avec la remise d’une lettre ouverte au Président de la République, François Hollande, cosignée par une longue liste de sommités scientifiques (et d’anciens Premiers ministres, Lionel Jospin et Michel Rocard). La lettre se voulait claire : un « développement massif de l’enseignement de l’informatique » est nécessaire en France.

Si les signataires saluaient l’introduction de l’informatique en Terminale S depuis 2012, ils jugeaient l’effort « insuffisant pour placer notre pays dans le peloton de tête des nations qui décideront de l’innovation » et proposaient notamment « de faire entrer l’informatique en tant que discipline à part entière dans le système éducatif français, avec des initiations à l’école primaire et une entrée dès le collège. »

Deux ans plus tard, en août 2016, un document de synthèse de la Société informatique de France (SIF) insistait toujours, en expliquant comment l’on pourrait « enseigner l’informatique de la maternelle à la terminale » et détaillant les « piliers de l’informatique » – algorithme, machine, langage, information – « que tous les élèves doivent s’approprier et ce quel que soit leur parcours dans l’éducation nationale. »

Les choses bougent pourtant et, en vertu d’une refonte des programmes scolaires pour la rentrée 2016, l'enseignement de l'informatique en France concerne désormais aussi les élèves du primaire et du collège. Si les spécialistes saluent l’orientation prise par l’Education Nationale, beaucoup estiment qu’il faut aller plus loin. Florent Masseglia, chercheur Inria de l’équipe Zenith, impliqué dans plusieurs projets de vulgarisation scientifique et de formation des enfants (notamment Les petits débrouillards - Occitanie), juge :

Il reste deux goulots d'étranglement, sur lesquels il faut absolument progresser : le temps alloué en classe à ces enseignements et la formation des enseignants.

« Le temps alloué est encore trop faible, avec une installation balbutiante (en option de terminale pour l'ISN, et au stade de démarrage pour le primaire et le collège) », estime-t-il, concluant que « pour être à la hauteur de l'enjeu, il s'agit de voir les choses en grand et pas de seulement bricoler quelques adaptations dans un coin (par exemple avec le CAPES). »

De fait, les initiatives se sont multipliées ces dernières années. Dans la cadre de sa mission de médiation scientifique, Inria aide les enseignants à apprendre l’informatique à leurs élèves : vidéos, cours en lignes (MOOC), ou activités "clé en main, pour le primaire et le secondaire, y compris dans le cadre de Pixees, qui centralise des ressources pour comprendre le numérique. Point d’orgue de la démarche, Class’Code, qui fait partie des quatre programmes d'investissement d'avenir "Décodez le code", propose « un programme de formation gratuit à destination de toutes personnes désireuses d’initier les jeunes de 8 à 14 ans à la pensée informatique. » Plusieurs associations ou fondations, comme La main à la pâte, Epi ou d’autres, apportent leur pierre à l’édifice, avec par exemple la diffusion gratuite du guide "1, 2, 3… codez !" à 10 000 enseignants en septembre 2016.

Coder n’est pas jouer

Reste à savoir ce que l’on enseigne. Pour beaucoup, l’heure n’est plus à apprendre à utiliser l’informatique mais plutôt à parler son langage. Ce qui fait dire à Léon Sterling, professeur émérite et ancien doyen de l’université de Swinburne, en Australie, qu’il faut « apprendre aux enfants à coder » mais que, pourtant, il faut limiter « l’usage obligatoire des laptops dans les salles d’écoles. » Roberto Di Cosmo, directeur de recherche Inria, professeur d'informatique à Paris VII et membre de l’Institut de recherche en informatique fondamentale (ex PPS), renchérit :

On peut passer des heures à cliquer sur une souris sans rien apprendre d'informatique, on peut aussi apprendre beaucoup d'informatique sans toucher une souris.


Martin Vetterli, qui présidera l’Ecole polytechnique fédérale de Lausanne l’an prochain, avance que l’informatique pourrait être « le latin du 21e siècle » et que, à l’instar des langues anciennes aidant à comprendre et maîtriser les langues européennes, savoir programmer aidera à comprendre le monde et son fonctionnement. Cette notion fait son chemin, comme le suggère l’initiative nationale américaine "Code as a Second Language" – le code comme deuxième langue. En viendrons-nous à pleinement assumer ce qui est bel et bien un nouveau langage : « J’ai pris Anglais première langue et Javascript/PHP/C++ seconde langue » ? Pas si dénué de sens, au point que certains, quitte à s’attirer les foudres des défenseurs d’une école "déconnectée" (des réalités ?), suggèrent que l’apprentissage du code pourrait même précéder celui de la lecture : « L’initiation à la programmation peut commencer dès le plus jeune âge, par exemple à la maternelle, en utilisant des langages graphiques, qui ne demandent pas de connaître les lettres de l’alphabet », souligne la SIF.

Pour autant, la comparaison avec l’enseignement des langues a ses limites car un langage de programmation se caractérise par « un vocabulaire limité et une grammaire assez rigide. On est donc bien loin de l'apprentissage des langues où l'on recherche des nuances de langages », souligne Marie Duflot-Kremer, maître de conférences en informatique à l'université de Lorraine (Loria) et très active en matière de médiation scientifique.
 

Du langage à la science, de la science à la pensée

Parler l’informatique n’est donc pas la seule finalité, d’autant que l’informatique doit se fondre avec les autres disciplines. « L’informatique est une science, à part entière », rappelle Florent Masseglia, mais « l’interdisciplinarité est dans l'ADN de l'enseignement de l'informatique –l’informatique et les autres disciplines doivent s'alimenter mutuellement. »

Aborder l'informatique comme une science et pas seulement comme une technique permet de découvrir les concepts qui ont fait de l'informatique ce qu'elle est.

« Dès le plus jeune âge on peut s'ouvrir à des notions comme le parallélisme, les bases de données ou le codage des informations, et tout cela de manière ludique, avec ou sans ordinateur », confirme Marie Duflot-Kremer, qui est d’ailleurs l’auteure scientifique d’une série de vidéos réalisées par Pixees, exposant des façons ludiques d’apprendre l’informatique aux plus jeunes.

PC 1512Au fond, apprendre l’informatique va bien au-delà de l’informatique, comme le soutient Colin de la Higuera, professeur à l'université de Nantes, chercheur au laboratoire d'informatique de Nantes-Atlantique (Lina) et ancien président de la SIF. Pour lui, « La démarche procédurale, l’abstraction, la capacité de créer des algorithmes sont autant de qualités à apprendre puis à maîtriser pour résoudre des problèmes de toutes natures. [Le code nous permet d’exécuter cette résolution. L’informatique nous permet de la comprendre. [...] C’est cette matière qu’il convient d’enseigner. »

L’essentiel est donc que l’apprentissage du code, à l’instar de celui de la parole, façonne et structure la pensée. « Comprendre comment exprimer les concepts pour permettre à un ordinateur d’effectuer des tâches précisément et efficacement est bien plus important que le langage de programmation utilisé », explique Sterling, concluant combien la « pensée algorithmique », ou « pensée informatique », amenant à raisonner de façon abstraite sur la façon de traiter des tâches, est d’un intérêt primordial.

« Pour coder, les élèves réaliseront l'intérêt d'apprendre à "gérer un projet" et donc clarifier ce qu'ils veulent créer, décomposer leur démarche en différentes étapes ou encore savoir présenter leur œuvre de la description du projet, jusqu'au résultat », explique Masseglia, concluant que l’apprentissage de l’informatique « stimule le raisonnement, peut aider à mieux comprendre d'autres disciplines et aussi recapter l'attention d'élèves en difficulté et qui vont se prendre au jeu. »

 

Une co-publication Inria - Usbek & Rica

 

Crédits et légendes photos : Wikimedia Commons ; Commitstrip ; CC0 Public Domain / Public domain pictures.net ; CC0 Public Domain / Old Computers

Propulsé par