Coder dès le primaire

La volonté depuis des années pour les différents ministères, c’est de faire rentrer le code à l’école. Je pense que je ne suis pas forcément objectif et je suis partagé.

Ancien développeur, j’ai la conviction qu’il s’agit d’un métier. Tout le monde ne peut pas être électricien, réparer des voitures, tout le monde ne peut pas coder. La volonté gouvernementale, c’est d’imaginer que si nos jeunes comprennent le code, ils seront à même de comprendre le monde. Je pense que c’est un leurre, il vaut mieux comprendre l’informatique générale plutôt que la programmation. Par exemple un film comme derrière nos écrans de fumée, permet d’ouvrir le débat sur le fonctionnement des algorithmes et leur but caché.

En parallèle, nous avons besoin de développeurs, nous avons besoin de personnels qualifiés. On peut imaginer que faire du code à l’école est une façon de créer des vocations. Je trouve de plus que l’approche par la programmation est une manière d’aborder la logique, le bon sens et aussi la rigueur. On le voit notamment en seconde générale avec Python. Les enfants réalisent que s’il manque un point virgule, ça ne fonctionne pas. C’est un point positif. Dans l’avenir il y aura certainement un choix à faire entre maintenir les mathématiques ou la programmation dans certaines classes. C’est une autre histoire.

Le code avec les blocs pour le primaire.

Scratch est devenu incontournable désormais pour le primaire. Les premiers à avoir senti la déferlante arriver c’est la maison d’édition Eyrolles avec son livre Scratch pour les kids. La problématique du livre, c’est qu’il n’est pas si facile que cela et certainement orienté trop jeu vidéo. On verra plus loin pourquoi je considère que c’est un problème.

Je trouve que l’approche de code.org est très intéressante. Avec un pseudo-code qui se rapproche de Scratch, on trouve des parcours progressifs. On voit par exemple ici la réutilisation de Angry Birds. L’oiseau qui doit taper dans le cochon, on fait appel à la gamification pour stimuler les élèves.

Un exemple de parcours.

Comme dit plus haut, Eyrolles, c’est positionné en premier, désormais on voit de nombreuses initiatives et produit. Mon épouse professeur des écoles en CM2 utilise par exemple, toujours chez Eyrolles, un kit de cartes. J’apprends à coder avec Scratch 3. Chaque carte permet de découvrir l’interface de Scratch. Les cartes ont donc des couleurs différentes et présentent les possibilités. Au dos de la carte, une demande de réalisation. De la même manière que pour code.org, les enfants travaillent en autonomie en faisant la fiche.

Scratch, toujours le roi au collège, mais pas pour les bonnes raisons.

On voit sur internet de nombreux tutoriels pour faire des jeux avec Scratch. C’est d’ailleurs l’idée de Scratch, un langage dédié plus au jeu qu’aux mathématiques. On peut voir d’ailleurs ci-dessous l’écran des opérateurs, la moindre opération à mener est un calvaire. C’est d’ailleurs amusant de voir des élèves passer au langage Python et trouver ça finalement moins pénible. Cela ne remet absolument pas en question les qualités de Scratch, il faut simplement comprendre que Scratch est utilisé en mathématiques pour le programme du DNB. Je pense que ce n’est pas le meilleur des langages pour faire des maths.

Sur la seconde image, un exercice de la session de septembre du DNB 2021 PRO. Pour moi la présentation du calcul demandé ne facilite pas la lecture et mettra en difficulté certains élèves.

Un langage qui n’est pas nécessairement adapté et une problématique plus difficile à expliquer quand on ne programme pas. Il faut comprendre que l’exercice de Scratch, est un exercice sur papier. Par conséquent, les élèves n’ont pas d’ordinateur sous la main pour faire l’exercice, c’est un exercice purement intellectuel comme les statistiques, les fonctions ou les théorèmes de géométrie. Si vous donnez aux élèves des sujets de DNB, ils vont vouloir le mettre sur l’ordinateur directement sans chercher pour avoir le résultat. Scratch est en effet ludique et c’est une activité facile de copie. Cela va à l’encontre des mathématiques et de la programmation.

En faisant de la programmation une partie du programme de mathématiques, on rate l’objectif. La programmation est une activité qui nécessite un travail de recherche, d’échec et de réussite. Ce n’est pas l’attente de l’exercice de DNB de maths qui demande une lecture de programmes et pas d’investigation.

Comme je l’ai dit plus haut, le code à l’école, c’est compliqué. Les objectifs, le matériel, le choix du langage, des classes qui doivent pratiquer la programmation.