Codage et initiation à la programmation à l’école (V2) Bien que les activités liées au codage aient toujours été d’actualité dans les programmes successifs, notamment par des parcours codés en cycle 1 et 2, les programmes 2015 intègrent une dimension plus spécifique : l’initiation à la programmation et ceci dès le cycle 2. Si celle-ci n’est pas directement évoquée en cycle 1, les programmes 2015 proposent par le travail sur les algorithmes et les parcours, des entrées préliminaires à la programmation. L’objet de ce document est de proposer une relecture des programmes en ciblant particulièrement les compétences mises en jeu dans les textes officiels liés à l’initiation à la programmation, et de cibler quelques outils simples pour les mettre en œuvre. Page 1 Denis BREGENT – ISFEC Bretagne 2016 Cycle 1 Dans le préambule des programmes, il est rappelé les modalités spécifiques d’apprentissage : - Apprendre en jouant - Apprendre en réfléchissant et en résolvant des problèmes - Apprendre en s’exerçant - Apprendre en se remémorant et en mémorisant Les activités liées au codage rentrent facilement dans ces attendus : le déplacement de personne ou d’objet que ce soit dans l’espace perçu ou à travers un support numérique peut aisément se mettre en place à travers des activités ludiques. Coder ou recoder un parcours permet aussi de mettre en place des situations problèmes engageantes mettant en avant l’anticipation et la représentation mentale tout en favorisant une évaluation par le milieu plus que par l’enseignant et d’une façon générale laissant la place à des démarches d’essais/erreurs. Relecture des programmes 1. Mobiliser le langage dans toutes ses dimensions Attendu : Participer verbalement à la production d'écrit. Savoir qu'on n'écrit pas comme on parle Le codage nécessite la production d’un message avec une syntaxe spécifique bien que s’appuyant sur le langage naturel. La nécessaire rigueur des termes ou des symboles employés permet une entrée dans le symbolique intéressante. 2 Agir, s’exprimer, comprendre à travers l’activité physique Attendus : Construire et conserver une séquence d'actions et de déplacements, en relation avec d'autres partenaires, avec ou sans support musical Coordonner ses gestes et ses déplacements avec ceux des autres Les premiers travaux de codage peuvent (et doivent) s’exprimer dans l’espace perçu. Un travail sur les déplacement « codés » permet un retour sur des supports plan (déplacements sur quadrillage etc.) 4. Construire les premiers outils pour structurer sa pensée 4.2 Explorer des formes, des grandeurs, des suites organisées Attendus : Reproduire un assemblage à partir d’un modèle (puzzle, pavage, assemblement de solides) Identifier le principe d’organisation d’un algorithme et poursuivre son application Page 2 Denis BREGENT – ISFEC Bretagne 2016 La reprise d’un modèle itératif comme le pavage ou plus encore l’algorithme est une initiation aux boucles présentes dans les programmes codés et fournit un appui sur les premières activités liées au codage. 5 Explorer le monde 5.1 Se repérer dans le temps et l’espace Attendus : Situer des objets par rapport à soi, entre eux, par rapport à des objets repères Dans un environnement bien connu, réaliser un trajet, un parcours à partir de sa représentation (dessin ou codage) Élaborer des premiers essais de représentation plane, communicables (construction d’un code commun) Utiliser des marqueurs spatiaux adaptés (devant, derrière, droite, gauche, dessus, dessous...) dans des récits, descriptions ou explications C’est peut-être dans ce domaine que le travail sur le codage peut le plus apporter. Coder des déplacements tout d’abord sur la cour ou en salle puis progressivement aller vers une représentation plane en s’appuyant sur des codes symboliques permet de travailler de nombreuses compétences liées au temps et à l’espace. 5.2 Explorer le monde du vivant, des objets et de la matière Attendus : Utiliser des objets numériques : appareil photo, tablette, ordinateur Bien que cela ne soit pas une condition nécessaire le passage par une interface numérique permet de rentrer de plain-pied dans les situations de codage informatique. Les outils utilisables en cycle 1 Page 3 Des cartes de déplacements fléchées en grand format pour un usage sur la cour ou en salle de motricité Un damier grand format et des cartes fléchées de petite taille pour le déplacement d’un objet sur un support plan Des jeux simples de codage comme Robot Turtles (http://www.kidscod.in/?p=2802) Si les situations vécues sont à privilégier, certains outils informatiques permettent une entrée progressive et ludique. o Scratch junior sur tablette (plutôt sur la fin du cycle 1) : http://www.sourisgrise.fr/scratch-jr-la-programmation-simplifiee-pour-les-moins-de-8-ans/ o Les cours niveau 1 du site Studiocode : https://studio.code.org/ qui proposent une initiation à l’outil et à sa manipulation à travers des puzzles. Denis BREGENT – ISFEC Bretagne 2016 Cycle 2 En cycle 2, l’appui doit encore être très fort entre l’espace perçu et l’espace plan ou le support écran. Les activités de déplacement codés et/ou de parcours sont encore présentes et s’appuient aussi sur les compétences repérables en Éducation physique et sportive. Comme pour le cycle 1 (et ce point est fondamental pour tous les cycles), l’initiation à la programmation et au code est une proposition riche pour travailler les situations problèmes et ne doit être en aucun cas un cours d’informatique. Ses intérêts principaux, vu du côté mathématique sont d’ordre didactique : - Situations de recherches ludiques mais exigeantes Validation par le milieu (le programme/codage est validé s’il fonctionne ou au contraire invalidé sans intervention de l’enseignant) Mise en avant d’une démarche d’essais/erreurs Rigueur du vocabulaire spatial employé. Nécessité d’anticiper ou de relire un parcours favorisant la représentation mentale. Dans un regard plus pédagogique, ce type d’activité favorise le travail en petit groupe et en laissant beaucoup d’autonomie à l’élève permet une organisation en tutorat. Relecture des programmes Mathématiques Espace et géométrie Attendus de fin de cycle : (Se) repérer et (se) déplacer en utilisant des repères et des représentations. Compétences associées : Page 4 (Se) repérer et (se) déplacer en utilisant des repères Se repérer dans son environnement proche. Situer des objets ou des personnes les uns par rapport aux autres ou par rapport à d’autres repères. o Vocabulaire permettant de définir des positions (gauche, droite, au-dessus, en dessous, sur, sous, devant, derrière, près, loin, premier plan, second plan, nord, sud, est, ouest,…). o Vocabulaire permettant de définir des déplacements (avancer,reculer, tourner à droite/à gauche, monter, descendre, …). S'orienter et se déplacer en utilisant des repères. Coder et décoder pour prévoir, représenter et réaliser des déplacements dans des espaces familiers, sur un quadrillage, sur un écran. o Repères spatiaux. o Relations entre l’espace dans lequel on se déplace et ses représentations. Denis BREGENT – ISFEC Bretagne 2016 Les programmes de cycle 2 font le lien avec les apprentissages spatiaux du cycle 1 et rappellent que ce travail est mené en lien avec « Questionner le monde ». On notera une précision plus forte du vocabulaire employé notamment avec l’introduction des points cardinaux. L’écran est proposé comme un support parmi d’autres pour représenter les déplacements. Là encore, les allers-retours entre l’espace, le support plan et le support numérique est à favoriser Questionner le monde Questionner l’espace et le temps Attendus de fin de cycle : ₋ Se repérer dans l’espace et le représenter. ₋ Situer un lieu sur une carte, sur un globe ou sur un écran informatique. Compétences associées Se repérer dans son environnement proche. Situer des objets ou des personnes les uns par rapport aux autres ou par rapport à d’autres repères. o Vocabulaire permettant de définir des positions (gauche,droite, au-dessus, en dessous, sur, sous, devant, derrière, près, loin, premier plan, second plan, nord, sud, est,ouest…). o Vocabulaire permettant de définir des déplacements (avancer, reculer, tourner à droite/à gauche, monter,descendre…). o Repères spatiaux. o Relations entre l’espace dans lequel on se déplace et ses représentations. Dans les éléments de progression, les programmes proposent d’aborder dès le CE1 un codage des déplacements à l’aide d’un logiciel de programmation adapté, pour amener au CE2 à la compréhension, et la production d’algorithmes simples. Les outils utilisables en cycle 2 Des cartes de déplacements fléchées en grand format pour un usage sur la cour ou en salle (avec l’intégration d’éléments plus complexes notamment des cartes boucles associées à un nombre indiquant les répétitions des actions d’une autre carte) Le jeu du « robot idiot » sur des déplacements simples Un damier grand format et des cartes fléchées de petite taille pour le déplacement d’un objet sur un support plan (même remarque que pour les déplacements en salle) Scratch junior sur tablette: http://www.souris-grise.fr/scratch-jr-la-programmation- simplifiee-pour-les-moins-de-8-ans/ Page 5 Lightbot peut aussi être une alternative intéressante : http://www.sourisgrise.fr/lightbot-ou-le-code-pas-a-pas-une-idee-lumineuse/ sur tablette uniquement, dans sa version junior En fin de cycle 2, on peut envisager l’utilisation complète de Scratch https://scratch.mit.edu/ (en ligne – flash- ou hors ligne, il existe aussi une version Android à télécharger) Les cours niveau 2 du site Studiocode : https://studio.code.org/ Denis BREGENT – ISFEC Bretagne 2016 Cycle 3 Si en cycle 3, l’appui sur les situations spatiales proches de l’élève est moins présent (ce qui ne veut pas dire qu’il ne soit pas à mettre en œuvre), le terme « initiation à la programmation » apparait très explicitement, autour d’un déplacement de personnage à l’écran. Dans ce cadre, les compétences liées sont principalement celles décrites dans le domaine mathématique. Il faut noter, bien que ce ne soit pas directement le sujet de ce document, un retour explicite de la géométrie dynamique dans les programmes. La réalisation et la création d’un programme de construction et son application dans un logiciel de géométrie dynamique relèvent de compétences proches d’un travail sur le codage et s’alimentent. Les intérêts pédagogiques et didactiques restent bien évidemment les mêmes qu’en cycle 2. Relecture des programmes Mathématiques Espace et géométrie Attendus de fin de cycle : (Se) repérer et (se) déplacer dans l’espace en utilisant ou en élaborant des représentations Compétences associées : Se repérer, décrire ou exécuter des déplacements, sur un plan ou sur une carte. Accomplir, décrire, coder des déplacements dans des espaces familiers. Programmer les déplacements d’un robot ou ceux d’un personnage sur un écran. o Vocabulaire permettant de définir des positions et des déplacements. o Divers modes de représentation de l’espace. Ce sont dans les repères de progressivité que les propositions sont les plus explicites : Initiation à la programmation : Une initiation à la programmation est faite à l’occasion notamment d’activités de repérage ou de déplacement (programmer les déplacements d’un robot ou ceux d’un personnage sur un écran), ou d’activités géométriques (construction de figures simples ou de figures composées de figures simples). Au CM1, on réserve l’usage de logiciels de géométrie dynamique à des fins d’apprentissage manipulatoires (à travers la visualisation de constructions instrumentées) et de validation des constructions de figures planes. À partir du CM2, leur usage progressif pour effectuer des constructions, familiarise les élèves avec les représentations en perspective cavalière et avec la notion de conservation des propriétés lors de certaines transformations. Page 6 Denis BREGENT – ISFEC Bretagne 2016 Les outils utilisables en cycle 3 En EPS, jeux d’orientation sur la cour, en salle avec des déplacements codés Le jeu du « robot idiot » avec des déplacements plus complexes et des séquences Scratch junior sur tablette: http://www.souris-grise.fr/scratch-jr-la-programmationsimplifiee-pour-les-moins-de-8-ans/ dans le cas d’un démarrage tardif dans la programmation Scratch https://scratch.mit.edu/ (en ligne – flash- ou hors ligne, il existe aussi une version Android à télécharger). Un article sur des ressources liées à Scratch est en cours de construction. Lightbot peut aussi être une alternative intéressante : http://www.souris-grise.fr/lightbot-oule-code-pas-a-pas-une-idee-lumineuse/ sur tablette uniquement dans sa version junior ou complète Les cours niveau 3 (voire 4 pour des élèves performants) du site Studiocode : https://studio.code.org/ Pour les nostalgiques (mais pas qu’eux, l’outil est toujours aussi pertinent), la torture logo : http://tortue-logo.fr/fr/tortue-logo En résumé (complété avec les attentes du cycle 4): Ressources complémentaires : Robot Turtles http://www.kidscod.in/?p=2802 Liste d’applications liées à la programmation https://github.com/elefevre/programmation-pour-les-enfants http://www.cabaneaidees.com/2014/03/20-ressources-pour-apprendre-aux-enfants-a-programmer-et-coder/ Page 7 Denis BREGENT – ISFEC Bretagne 2016 Annexe 1: Synthèse de ce que peut apporter les activités de codage à l’école Sources principales : Beziat (2012) et Rakotomalala Harisoa (2015) – voir annexes 2 et 3 Page 8 Denis BREGENT – ISFEC Bretagne 2016