L’introduction du coding à l’école est l’un des projets phare du Ministère de l’Education mis en œuvre dès 2020. Apprendre le coding, c’est comprendre comment « réfléchissent » les machines et comment elles réagissent à nos actions. C’est aussi apprendre à les programmer, donc à communiquer avec elles.
Dans le passé on utilisait le plus souvent des logiciels éducatifs comme LOGO ou SCRATCH pour enseigner le coding. Dans les deux cas les programmes consistent dans une séquence de commandes simples que le sprite de la tortue LOGO ou du chat SCRATCH doit exécuter sur l’écran : fais deux pas à droite, tourne à gauche, avance de trois pas, dit “Bonjour”, joue de la musique, retourne sur la position de départ etc.
Mais on n’a pas besoin d’un ordinateur ou d’une tablette pour apprendre à coder. C’est plus sympathique et ludique d’avoir un vrai objet, par exemple un petit robot, qui exécute la séquence des commandes programmées. Le principe reste le même.
Depuis plusieurs années on trouve sur le marché une panoplie de tels robots éducatifs. Nous allons présenter les plus doués ci-après.
Ozobots
Nadar Hamda, un entrepreneur américain, a fondé en mai 2012 la société Ozobot Inc pour développer des petits robots programmables qui s’adressent aux enfants pour leur enseigner la programmation. Aprés deux ans de développement, le premier robot, nommé BIT, a été présenté en janvier 2014 à la Consumer Electronics Show (CES), le plus important salon consacré à l’innovation technologique en électronique grand public.
https://youtu.be/zm_H8HXWFZ4
Ozobot est un formidable outil pour enseigner les bases de la programmation de façon amusante et interactive qui s’adresse aux enfants à partir de 6 ans. Pour les plus jeunes, il se programme en insérant des zones de couleur, les Ozocodes, à l’aide de feutres sur la trajectoire. Et pour les plus grands, Ozobot se programme avec Ozoblockly, analogue à Scratch ou Blockly Games.
Ozobot se présente actuellement en deux versions : Ozobot Bit est le plus simple, Ozobot Evo est plus évolué. Tous les deux disposent de capteurs optiques pour reconnaîtres des commandes dessinées avec un marqueur couleur sur le trajet à parcourir. La table des codes est présentée ci-après.
En outre on peut programmer les deux robots en ligne avec OzoBlockly. Le modèle Ozobot Evo dispose en plus d’un haut-parleur, de capteurs de proximité et de six LED’s additionnelles.
Ozobot figure parmi les robots recommandés par le SCRIPT sur le portail educoding.lu.
Cubetto
Conçu par la start-up anglaise Primo Toys grâce à une campagne de financement participatif massive sur Kickstarter en 2016, Cubetto se veut une introduction aux fondamentaux de la programmation. J’ai participé comme bailleur de fonds à ce projet et j’ai reçu mon Cubetto en été 2016.
Le dispositif est constitué du robot, un cube en bois avec des roues, d’une console de programmation en bois, d’un ensemble de jetons de différentes formes et couleurs, d’un tapis de jeu avec des larges cases carrées et d’un livret d’histoires. Le tout est emballé dans une jolie boîte.
Le petit robot est posé sur la case de départ sur le tapis. Le but est de le déplacer, case par case, dans les mondes imaginaires décrits dans le livret d’histoires, en alignant sur la console en bois une suite d’instructions symbolisée par les jetons de couleur. Une flèche verte veut dire “avance tout droit d’une case”. Une flèche jaune signifie “pivote sur ta gauche”. Une flèche rouge ? pivote sur ta droite. Alignés les uns après les autres comme des perles, les jetons dessinent une suite de mouvements auxquels Cubetto se conformera.
La programmation de Cubetto demande à un enfant différents efforts, à la fois en termes d’analyse spatiale et de planification. Contrairement à une voiture télécommandée, le robot ne se contrôle pas en temps réel, mais suit une chaîne de commandes qui doit être anticipée. Pour ce faire, il faut mentalement dessiner le chemin à faire suivre au cube en bois. L’enfant doit en outre être conscient au fait que la gauche du robot n’est pas forcément la sienne et que, dans le décompte des cases à parcourir, il ne faut pas prendre en considération celle où il se situe déjà.
Le Cubetto dispose d’un quatrième type de jeton qui est de couleur bleue. Il ne correspond pas à un déplacement, mais à un ordre formel : suivre la ligne de une à quatre commandes située dans une partie à part de la console. Dans un programme classique cela correspond à un sous-programme. La maîtrise du jeton bleu est fondamentale pour pouvoir traverser entièrement le tapis de jeu en réalisant des trajets longs ou complexes. Comme le tapis fait six cases de long et qu’on ne dispose que de quatre jetons verts pour avancer d’une case, il faut créer un sous-programme avec trois jetons verts et l’exécuter deux fois avec deux jetons bleus. Comme 2 x 3 = 6, on peut traverser tout le tapis. De cette manière on peut intégrer facilement les additions et multiplications dans les cours de codage au lieu de le faire dans des cours séparés de mathématique.
En mai 2020, Filippo Yakob, le CEO de Primo Toys et père du Cubetto, a lancé un appel public sur le web pour demander de l’aide aux fins d’assurer la survie de Cubetto. Suite au confinement à cause de la pandémie COVID-19, l’achet de matériel didactique par les écoles a baissé sensiblement.
Cubetto est également recommandé par le SCRIPT dans la liste du matériel didactiel sur le portail educoding.lu.
Code-a-pillar
Fisher-Price avait dévoilé à l’occasion de la CES 2016 (Consumer Electronics Show) une étrange chenille programmable appelé « Code a Pillar », destinée à apprendre les bases du code aux plus petits.
https://youtu.be/egf3hewZYkE
Dans l’emballage, on trouve le corps de la chenille avec sa tête, une pastille verte pour marquer le début d’un trajet à parcourir, une pastille rouge pour marquer la fin du trajet, ainsi que huit segments qui s’attachent comme queue au corps de la chenille. Pour faire bouger le jouet, Il suffit d’appuyer sur le grand bouton situé sur le corps de la chenille, près du haut-parleur. La chenille n’avance pas bêtement en ligne droite, mais elle change de direction en fonction de l’ordre des segments attachés à son corps. On dispose de quatre types de segments :
- 3 pièces vertes qui permettent à la chenille d’aller tout droit
- 2 pièces orange qui permettent à la chenille d’aller à gauche
- 2 pièces jaunes qui permettent à la chenille d’aller à droite
- 1 pièce mauve qui arrête la chenille et lui fait jouer de la musique
Chacune des pièces s’emboite facilement l’une dans l’autre et s’enlève aussi aisément. Elles utilisent un connecteur de type USB et quand elles sont connectées, elles restent solidement attachées l’une à l’autre.
On peut se procurer des segments d’extension de la base avec des sons, des lumières et des mouvements particuliers. Un segment particulier permet de simuler l’exécution d’un sous-programme plusieurs fois de suite. Le fonctionnement du Code a Pillar est similaire au Cubetto, mais au lieu de définir la séquence des commandes à exécuter moyennant des jetons placés sur la console de programmation, la séquence est fixée par l’ordre d’attachement des segments dans la queue de la chenille.
Fisher Price offre également une application « Think & Learn Code-a-pillar » pour tablettes et smartphones Apple et Google Android.
Le chemin à parcourir par la chenille est affichée sur l’écran. On peut choisir le degré de difficulté parmi 9 niveaux. Des jetons virtuels, similaires à ceux du Cubetto, mais à déplacer avec les doigts sur l’écran tactile, doivent être posés sur les cases du chemin tracé. Des jetons particuliers «manger», «nager» ou «danser» doivent être placés sur les cases qui contiennent de la nourriture, un étang ou un ruisseau, respectivement des notes de musique. Si tous les jetons sont correctement positionnés, la chenille parcoure le trajet et arrive à la destination où l’enfant est félicité. En cas d’une erreur, la chenille s’arrête en cours de route et invite l’enfant avec une voix enregistrée de changer le jeton.
L’application est très bien faite et peut être utilisée sans avoir une chenille Code-a-Pillar, mais la combinaison des deux est parfaite. Les images qui suivent montrent quelques exemples de copies d’écrans de l’application.
Franck Fleurey, un développeur norvégien, a procédé il y a 4 ans à une ingénierie inverse sur le jouet Code-a-Pillar pour analyser le protocole de communication USB entre les segments de la chenille. Il a publié les résultats sur le service web d’hébergement et de gestion de développement de logiciels GitHub.
Une année plus tard, un autre développeur, Chrisly42, a présenté son projet Morph-a-Pillar sur la même plateforme GitHub. Un micro-ordinateur équipé d’un connecteur est programmé pour simuler le comportement d’une séquence de segments. Le dispositif est attaché au corps ou au dernier segment de la queue de la chenille. On peut même utiliser des fonctionnalités qui ne sont pas implémentées dans le jouet réel.
BeeBot & BlueBot
Wunderkind
ClickBot
Lego
Mochi Bear
Autres logiciels et matériels éducatifs
Sur le portail educoding.lu le SCRIPT se réfère au site web CS – Unplugged Informatik ohne Computer et il propose plusieurs outils additionnels pour l’utilisation dans les cours de coding :
Bibliographie