
I- Présentation
TuxBot est une application gratuite développée par l’académie de Nantes. Elle fonctionne sur PC et tablettes Androïd. Ce logiciel permet de coder les déplacements d’un personnage sur un quadrillage.
Les options qu’il propose en font un outil pertinent de la GS au CM2. Les différents paramétrages, explicités dans le logiciel, et les 20 parcours intégrés, ainsi que la possibilité d’en éditer de nouveaux, sont des outils pertinents pour construire une progression.
Les modalités de résolution du problème proposé (guider le « pingouin » jusqu’à son « poisson ») le mettent à la portée de tous via la possibilité de procéder par essais/erreurs. Ces modalités se situent à la croisée de celles à favoriser selon les programmes 2015 : Apprendre en jouant, en réfléchissant et en résolvant des problèmes, en s’exerçant.
Les enseignantes de l’école maternelle du Gour de l’Arche l’ont utilisé avec leurs élèves de GS. Trois axes d’apprentissages ont été privilégiés :
1- Le langage, au travers, d’une part, de la découverte et la manipulation du lexique spécifique à la programmation et, d’autre part, de la construction d’échanges entre pairs concernant les stratégies utilisées.
2- Le repérage dans l’espace, notamment la construction de la latéralité.
3- L’utilisation du TBI.
II- Etape 1 du module : le jeu du robot
Principe : Les élèves sont en binôme. L’un guide l’autre à l’aide d’instructions de déplacement. L’objectif étant d’aller du cerceau bleu jusqu’au poisson en avançant sur les cases.
Lexique spécifique : programmer / programmeur / programmation ; langage ; instruction

Un quadrillage est représenté au sol avec du ruban adhésif. Trois variables sont possibles pour les déplacements : libres sans obstacles / contraints (cf.photo) / libres avec obstacles.
Les élèves vont d’abord guider leur partenaire case par case, directement sur le quadrillage. Ils vont donc, selon leur rôle, DIRE le déplacement ou L’EXÉCUTER, le vivre.

Ensuite, ils vont devoir, par 2, ANTICIPER ce trajet et le CODER par écrit à l’aide de symboles. Puis un élève du binôme DÉCODERA ce déplacement en le lisant, l’autre en l’exécutant.
Cette première étape est riche en interactions constructives au sein des binômes et du groupe (8 élèves). L’engagement des élèves est fort.
III- Etape 2 du module : TuxBot

Les élèves vont poursuivre leur apprentissage du codage via le logiciel TuxBot. Ils commencent avec le « mode entraînement » proposé. Ce mode permet, comme dans la première phase du « jeu du robot » décrite dans l’étape 1 ci-dessus, de déplacer le personnage chaque fois que l’on appuie sur une flèche. Le trajet n’est donc pas anticipé ici.
Ensuite, les élèves vont proposer des programmes sur leur cahier de programmation (documents disponibles sur la page de téléchargement du logiciel) :

L’application leur permettra dans un deuxième temps de tester et confronter leurs hypothèses. Le « mode entraînement » est alors désactivé. Lorsque les élèves cliquent sur une flèche, celle-ci n’active donc pas de déplacement mais s’affiche dans la partie réservée au programme, sous le parcours (cf.illustration ci-dessous). Le groupe peut ainsi facilement apprécier la proposition de l’élève (ou du binôme) et anticiper sa validité en argumentant. En cliquant sur « GO » le programme s’exécute ; les élèves identifient immédiatement leur réussite ou échec. Les échecs sont l’occasion de repérer la ou les erreurs dans le programme et donnent ainsi lieu à des échanges très pertinents.

Ce support numérique offre ainsi une occasion d’engager fortement les élèves dans la tâche et de favoriser leurs apprentissages via un feedback immédiat lors des essais/erreurs ainsi que par leur collaboration et leurs échanges oraux constructifs.
Les parcours proposés sont de difficulté croissante. Une éditeur de parcours est également disponible. Les parcours peuvent être importés ou exportés, par exemple dans le cadre d’un échange entre deux classes.
IV- Pour aller plus loin : paramétrages de TuxBot

Les options de paramétrage sont riches et pertinentes d’un point de vue pédagogique. On peut notamment relever les options suivantes :
a- Déplacements absolus ou relatifs :
Déplacements absolus Déplacements relatifs
En déplacements absolus, le personnage n’est pas orienté. Cette option simplifie la tâche. En déplacement relatif, le personnage est orienté ce qui implique des changements importants :
- Lorsqu’on clique sur « droite » ou « gauche », le personnage pivote mais ne change pas de case.
- Les déplacements produits par les flèches dépendent de l’orientation du personnage (si il a pivoté vers la droite, la flèche du haut « avancer » le fera aller vers la droite, et non vers le haut)
b- 4 types d’interface pour programmer :
Interface classique Interface alternative Interface avancée Interface expert
Les différentes interfaces sont présentées ici avec le choix des déplacements absolus (cf.partie IV-a ci-dessus). Elles sont de possibilités et de difficultés croissantes. Les trois premières interfaces sont assez proches dans leur présentation, la quatrième, « experte », s’en détache nettement (cf.images ci-dessus) :
- L’interface classique est l’interface par défaut. Il y a les commandes pour programmer, le bouton GO pour exécuter le programme, un bouton pour effacer la dernière instruction et une croix pour les effacer toutes. La flèche en bas à droite permet de revenir au menu principal.
- L’interface alternative présente le bouton GO éloigné des commandes de programmation. Il s’apparente plus à la touche « entrée » des claviers.
- L’interface avancée propose une fonction pour répéter une instruction jusqu’à 10 fois. Le nombre d’instructions étant limité à 20, cette fonction est utile pour réaliser des parcours complexes.
- L’interface expert est beaucoup plus complexe, autant dans sa disposition que dans les fonctions qu’elle propose. Elle est à réserver aux élèves à partir du CM1 (interfaces alternative et avancée en pré-requis). L’objectif est de pouvoir réaliser des parcours plus complexes ou de réduire le nombre d’instructions pour un parcours pouvant s’exécuter en 20 instructions simples. En plus de la fonction répéter, 4 « mémoires secondaires » sont disponibles pour créer des séquences jusqu’à 10 instructions. Ensuite, les boutons M1, M2, M3 et M4 permettent d’intégrer ces séquences dans la « mémoire principale ».