Scratch et Snap! Pour initier à la programmation publié le 24/02/2016 - mis à jour le 25/02/2016
Comparatif des interfaces Scratch et Snap !
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 :
Cette initiation se poursuit au cycle 3 :
Et prend vraiment tout son sens au cycle 4 :
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) :
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
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.
Carte du jeu "Pose la fusée"
Fichier source de l’hélicoptère
Fichier source du jeu "pose la fusée"