Scratch et Snap! Pour initier à la programmation publié le 24/02/2016  - mis à jour le 25/02/2016

Comparatif des interfaces Scratch et Snap !

Pages : 123

Scratch et l’initiation à la programmation

Le contexte de la réforme du collège

Dans le cadre de la réforme du collège, l’initiation à la programmation fait son entrée dans les programmes à partir du cycle 2 :

Dès le CE1, les élèves peuvent coder des déplacements à l’aide d’un logiciel de programmation adapté, ce qui les amènera au CE2 à la compréhension, et la production d’algorithmes simples.

Cette initiation se poursuit au cycle 3 :

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.

Et prend vraiment tout son sens au cycle 4 :

En 5ème, les élèves s’initient à la programmation événementielle. Progressivement, ils développent de nouvelles compétences, en programmant des actions en parallèle, en utilisant la notion de variable informatique, en découvrant les boucles et les instructions conditionnelles qui complètent les structures de contrôle liées aux événements.

Scratch, un outil adapté à la programmation au collège

Scratch est un langage de programmation visuel et gratuit. En glissant-déposant des blocs colorés, il est possible de créer des histoires interactives, des jeux, des animations, de la musique, ou des présentations. Il est ensuite possible de les télécharger sur Internet pour les partager avec les autres utilisateurs du monde entier. Scratch est conçu pour jouer, apprendre par soi-même et créer.
Il a été conçu par le MIT (Massachusetts Institute of Technology, un des instituts universitaires les plus importants des États-Unis) pour initier les jeunes à des concepts importants en mathématiques et informatique, tout en apprenant à développer une pensée créative, un raisonnement systématique et à travailler en équipe.
De par son fonctionnement, il constitue une solution pertinente pour la programmation au collège. En effet :

  • sa prise en main par les élèves est quasi-immédiate ;
  • l’environnement est simple et efficace : constitué de trois parties, on a les instructions, la fenêtre du programme et la fenêtre d’exécution du programme sur le même écran ;
  • il n’y a pas de syntaxe à connaître, ni à écrire : on déplace simplement des blocs d’instructions qui s’imbriquent par aimantation ;
  • il est adapté à la programmation événementielle : les scripts démarrent à partir d’un événement et les objets peuvent communiquer entre eux par des messages ;
  • un simple double-clic sur une instruction permet de l’exécuter, ce qui permet de vérifier facilement la bonne programmation d’un objet ;
  • il est dynamique : il est possible de modifier le code d’un programme en cours d’exécution et d’exécuter plusieurs programmes en parallèle ;
  • le débogage est très simple les blocs de programme peuvent être détachés les uns des autres et testés indépendamment, ce qui permet de rapidement isoler une erreur ;
  • il apporte des rendus visuels grâce à des scènes et des costumes et constitue une interface attractive pour le jeune public ;
  • à partir de l’interface de développement, on peut envoyer sur un espace de partage en ligne son programme ce qui facilite les échanges et favorise les interactions entre élèves ;
  • on trouve sur cet espace un partage de nombreux programmes, parfois utiles pour débloquer des situations ;
  • Il existe un forum en français autour de « Scratch ».

Pour une présentation plus approfondie de cet outil, vous pouvez consulter ce guide en ligne (cliquer sur l’image) :

Présentation de Scratch
Copie d’écran du guide de Scratch.

ainsi que le guide de prise en main proposé lors des journées de formation "algorithmique et programmation" :

Livret d'accompagnement pour la prise en main de Scratch (PDF de 2.3 Mo)

Livret d’accompagnement pour la prise en main de Scratch

Les limites de Scratch

Le fonctionnement de Scratch repose sur la technologie "Flash", qui nécessite l’installation d’Adobe Air sur la machine pour une utilisation locale et l’installation du plug-in Adobe Flash Player dans le navigateur pour une utilisation en ligne.
Outre le fait que ces deux logiciels soient des logiciels propriétaires, cela pose un problème supplémentaire lorsqu’on veut utiliser Scratch sur une tablette puisque le format "Flash" n’est pas lisible de manière native sur ces appareils.
Des solutions existent mais elle ne sont pas satisfaisantes pour une utilisation en classe avec des élèves.
Par ailleurs, bien qu’il soit possible de créer ses propres blocs de commande sous Scratch, ceux-ci restent attachés à un projet et ne peuvent pas être exportés vers d’autres projets, à moins d’exporter le lutin dans lequel le bloc a été défini.

Portfolio
Documents joints
un document Carte du jeu "Pose la fusée" (PDF de 122.9 ko)

Carte du jeu "Pose la fusée"

Fichier source de l’hélicoptère

Fichier source du jeu "pose la fusée"