Scratch

Autoformation sur le logiciel de programmation interdit aux grands Scratch

par le RÉCIT MST (Pierre Couillard et Pierre Lachance)

Plan de la formation

  1. Vision TIC
  2. Introduction à l’autoformation
  3. Pourquoi Scratch?
  4. Installation de Scratch
  5. Activité d’introduction : On clique partout
  6. Premier défi, on jase
  7. La planification papier d’un projet.
  8. Concept de message ou signal
  9. Concept de conditions initiales.
  10. On enregistre notre projet, on le ferme, et on l’ouvre de nouveau.
  11. Liens PFEQ de les projets
  12. Deuxième défi, on dessine
  13. Faites tracer un carré à un lutin.
  14. Voir les briques pouvant aider au projet.
  15. Concept de boucle.
  16. Modifier votre script de carré pour qu’il trace un triangle équilatéral.
  17. Concept de variable.
  18. Troisième défi, on conduit
  19. Quatrième défi : Partager ses projets
  20. Cinquième défi : Récupérer un projet existant
  21. Défis pour aller plus loin
  22. En classe
  23. La documentation disponible

Vision TIC

  • Selon nous, les TIC doivent apporter un plus, non pas «faire» la même chose (une bonne présentation du RÉCIT de l’enseignement privé http://recit.org/ul/p1x ).
  • Les élèves doivent manipuler les TIC, pas seulement les voir manipuler ou se faire dire comment le faire.
  • On veut varier la manipulation des objets numériques http://recit.org/ul/3hq , l’exerciseur et la production avec les TIC c’est bien, mais apprendre c’est mieux (apprendre avec les TIC c’est plus que de produire un document/vidéo… voir le projet MétaTIC http://recit.org/metatic/ ).

Introduction à l’autoformation

La présente autoformation vous initiera au logiciel de programmation Scratch https://scratch.mit.edu/. La formation a été séparée en «blocs» indépendants et relativement courts à traiter. Ces blocs (défis) vous aideront, entre autres,  à explorer les possibilités du logiciel en classe de mathématique, de science et technologie.

Vous vous sentez bloqué à un certain moment de l’autoformation? Vous avez des questions où les réponses ne se trouvent pas facilement dans la documentation (voir le dernier bloc)? Il est possible de jaser avec les formateurs en visioconférence (ou par courriel). Pour ce faire, contactez-nous pierres@recitmst.qc.ca pour un rendez-vous.

Pourquoi Scratch?

Scratch https://scratch.mit.edu/ est l’une des rares applications qui a pour but l’apprentissage. Habituellement les logiciels sont construits pour produire quelque chose (un texte, un vidéo, une présentation, etc). Selon nous, les applications comme Scratch offrent un contexte d’apprentissage plus significatif, car nul besoin d’inventer une situation pour intégrer le logiciel.

Scratch est une «machine» à «vrais problèmes» (http://www.cslaval.qc.ca/tic/francais/grel/sitprobl.htm )  où les élèves déploient leur créativité et leur persévérance pour les résoudre. Pour en savoir plus, lire ces pages: http://squeaki.recitmst.qc.ca/ScratchIntro et http://squeaki.recitmst.qc.ca/PourquoiScratch

Vidéo sur quelques concepts mathématiques intégrés à Scratch :

Installation de Scratch

Quelques versions de Scratch sont disponibles. La version 1.4 http://scratch.mit.edu/scratch_1.4/ s’installe en mode local sur le poste (choix intéressant pour gérer les robots Wedo par exemple). Bien que plus ancienne, elle est très stable et complète. La version portable (http://portableapps.com/node/26666 ou http://portable-scratch.softonic.fr/telecharger ) permet d’exécuter Scratch depuis une clé USB (pas besoin d’installer le logiciel, on transporte le logiciel avec nous), ce qui peut être utile dans certaines circonstances. Il existe une version en ligne de Scratch 2.0 http://scratch.mit.edu/ (cliquer sur Créer dans le menu en haut de la page). Cette version, la plus récente, ne nécessite pas d’installation sur le poste mais nécessite d’être connecté à Internet. On peut, avec un peu d’effort, installer localement cette dernière version http://scratch.mit.edu/scratch2download/.

Nous vous conseillons d’utiliser toujours la même version avec vos élèves afin d’éviter l’incompatibilité des fichiers entre la version 1.4 et 2.0 (Scratch 2.0 peut ouvrir les fichiers de la version 1.4 mais pas l’inverse).

Scratch peut être utilisé sur tablette iPad grâce à l’application Pyonkee (une copie de Scratch) http://recit.org/ul/p1d .

Activité d’introduction : On clique partout

Comme premier pas dans Scratch nous vous demandons d’ouvrir le logiciel et de «cliquer partout». Essayer de faire des liens avec les logiciels que vous connaissez. Trouver les menus, les zones particulières, l’aide. Quelques actions importantes : créer et démarrer un script, enregistrer/ouvrir son projet, ajouter/éditer un lutin, gérer la scène (arrière plan).

Nous vous invitons à réaliser cette activité (c’est de cette façon que les élèves s’approprient des logiciels) avec votre groupe d’élèves. Lors du retour, le groupe aura trouvé/noté plusieurs fonctions du logiciel. Suite à cette discussion, une tempête d’idées autour des différents projets réalisables avec Scratch pourrait être faite.

Présentation de Scratch 1.4 (à voir même pour ceux qui utilisent Scratch 2.0) http://recitmst.qc.ca/IMG/pdf/scratch.pdf

Vidéo présentation de Scratch 2.0 :

Premier défi, on jase

Deux lutins (qui se regardent) se rencontrent, ils échangent à tour de rôle quelques mots de politesse.

Voir les briques (d’autres briques peuvent être utilisées, il n’y pas qu’une seule solution) pouvant aider au projet.

image03

Un fond d’écran autre que blanc, un peu de mouvement de la part d’un lutin, le changement de costume d’un lutin, pourrait améliorer votre projet.

Un exemple de résultat :

La planification papier d’un projet.

Se lancer tête baissée dans une programmation n’est pas la meilleure stratégie. Il est très important que l’élève planifie son projet sur papier ou  l’ordinateur (idéateur, traitement de texte, etc). Nommer ses personnages, se faire une ligne du temps (ou les étapes) du projet, écrire les textes, sont quelques éléments permettant à l’élève d’être plus efficace dans Scratch. Cette planification permettra également l’enseignant à aider au «déboguage» du projet de l’élève.

Concept de message ou signal

Scratch est un logiciel de programmation objet. Ce qui implique que les objets doivent pouvoir interagir ensemble. Pour ce faire, le concept de message ou de signal est important à comprendre et à utiliser dans plusieurs circonstances. Voir ce petit tutoriel pour comprendre le fonctionnement des messages/signaux : http://squeaki.recitmst.qc.ca/IntroMessage

Concept de conditions initiales.

Où (valeur de X et de Y, montré ou caché…) doivent être situés les personnages au début de la scène? Quel costume doivent-ils porter? Quelle orientation doivent-ils avoir? Voilà quelques conditions initiales du projet que l’élève doit programmer tout comme la suite de la scène.

Vidéo présentation des conditions initiales :

On enregistre notre projet, on le ferme, et on l’ouvre de nouveau.

Vous avez travaillé quelques minutes sur le présent projet, il serait intéressant de pouvoir le garder quelque part (l’élève doit apprendre  se retrouver dans l’architecture de l’ordinateur et du réseau) afin de pouvoir le poursuivre plus tard. Il est important de signaler aux élèves d’enregistrer leur projet régulièrement, car en TIC tout peut arriver, même de perdre un projet en cour.

Liens PFEQ des projets

Quels seront les liens avec le PFEQ que vous voudrez «évaluer» dans un projet? À vous de cibler, pour chaque projet, quelques (pas trop) éléments à observer. Le niveau scolaire des élèves, leur expérience dans Scratch, le type de projet (langue, arts, science, etc), sont quelques critères à tenir compte. Voir dans ces documents pour des détails : http://recitmst.qc.ca/IMG/pdf/scratch_16fev15.pdf et http://recitmst.qc.ca/IMG/pdf/prog.pdf

Deuxième défi, on dessine

Faites tracer un carré à un lutin.

Quand on parle de «dessin» ou «tracer» on fait ici référence  une trace laisser par le passage d’un lutin dans la scène. On doit donc faire déplacer le lutin de telle sorte qu’il réalise la forme demandée.

Voir les briques pouvant aider au projet.

image05

On doit voir un peu ce qui se passe, pas trop rapide. Votre script est-il le plus court/optimal possible?

Concept de boucle.

En programmation la répétition d’une commande est souvent utile (dans le cas de notre carré, on répète «avance de» et «tourne de»). De là les boucles qui permettent de répéter une série de commandes, ce qui optimise le programme.

image04

Modifier votre script de carré pour qu’il trace un triangle équilatéral.

Ici nous avons un peu de mathématique à faire, voir la vidéo suivante :

Concept de variable.

Comprendre et utiliser une «variable» peut aider à améliorer vos scripts. Dans le présent cas, il y a un lien entre le nombre de côtés et l’angle du changement de direction (360 / nombre de côtés). On peut alors  en arriver à quelque chose comme le script ci-dessous.

image01

Ici notre variable se nomme «NbrCote» et elle sert à ajuster la longueur du côté (500/NbrCote) et le degré du changement de direction du lutin (360/NbrCote).

Voir cette vidéo pour quelques explications supplémentaires :

Troisième défi, on conduit

Construire une petite piste de course à obstacles et y faire promener un véhicule à l’aide des touches flèches (haut, bas, droite, gauche).

Voir les briques pouvant aider au projet.

image00

Ici la difficulté n’est pas dans la programmation, mais dans les multiples façons d’arriver au même résultat. Pour faire déplacer le lutin avec les flèches on peut utiliser comme dans la suggestion ci-haut les briques «modifier X ou Y par ?», ou encore de faire avancer dans une direction, ou glisser, ou… L’important est de pouvoir contrôler le lutin.

Faire exploser le véhicule (son), et recommencer à zéro si on touche à un obstacle. On change de tableau si on touche au point vert (pensez au concept de signal/message).

image02

On commence ici à s’approcher du «jeu vidéo» avec ses contrôles, ses tableaux, son histoire, etc. Le jeu vidéo peut être un excellent contexte pour motiver les élèves à écrire une histoire, créer des personnages et des tableaux (étapes du jeu), programmer des effets spéciaux, etc. L’enseignant peut donner un «cahier de charge» pour s’assurer que les concepts (compétences) à développer soient présents dans le jeu de l’élève (de l’équipe).

Quatrième défi : Partager ses projets

Le site de Scratch offre la possibilité d’héberger (afin de les rendre visible dans le navigateur Web) les projets des élèves relativement facilement depuis le menu «Partager». Pour ce faire on doit se créer un compte (de classe ou individuel) sur le site («Rejoindre Scratch» dans le menu du haut de la page d’accueil du site). Voir la vidéo suivante pour quelques détails sur le dépôts de projet :

 

Vous avez un site Web classe? Vous voudrez alors publier vos projets Scratch sur celui-ci, voici comment faire :

 

Partager avec le RÉCIT MST votre projet : pierres@recitmst.qc.ca (il va nous faire plaisir de commenter/remixer votre travail)

Cinquième défi : Récupérer un projet existant

Aller chercher un programme sur le site du MIT et analyser/améliorer/modifier son code

Apprendre à programmer c’est aussi lire et comprendre le code d’une autre personne.

Les «remix» sont une bonne façon de s’approprier la programmation en interprétant le code d’une autre personne. De plus, l’esprit de partage (comme quoi on ne part pas de zéro) est intéressant en éducation.

Défis pour aller plus loin

  • Cliquer sur un objet, changer de fond d’écran (signal)
  • Améliorer un programme (ex. carré avec variable)
  • Faire 2 tableaux d’une histoire (style bande dessinée)
  • Créer et Animer bonhomme allumettes

12 défis pour les « vrais » Scratcheurs

  1. Chaque fois que vous appuyez sur la touche G, le lutin devient un peu plus grand. Chaque fois que vous appuyez sur la touche P, le lutin devient un peu plus petit.
  2. Chaque fois que le lutin entend un bruit fort, il change de couleur. (Picoboard)
  3. Chaque fois que le lutin est dans la partie supérieure de l’écran (25%), il dit : « J’aime ça ici. »
  4. Lorsque le lutin touche un obstacle bleu, on entend un son aigu. Lorsque le lutin touche un obstacle rouge, on entend un son grave.
  5. Chaque fois que deux lutins entre en collision, l’un d’eux dit : « Excusez-moi. »
  6. Chaque fois que le lutin chat est à proximité du lutin chien, le chat se retourne et s’enfuit du chien.
  7. Chaque fois que vous cliquez sur le fond, une fleur apparaît à cet endroit.
  8. Chaque fois que vous cliquez sur un lutin, tous les autres lutins font la danse.
  9. Quand le score atteint 10, la scène (au fond) change.
  10. Le lutin tombe comme contrôlé par la gravité, mais s’arrête quand il arrive sur le sol vert.
  11. Le lutin suit le pointeur de la souris, mais il n’est jamais trop près du pointeur de la souris.
  12. Le lutin suit une ligne rouge.

D’autres idées :

En classe

Vous avez fait un bon tour du logiciel Scratch, voici maintenant quelques trucs pour vous faciliter le travail en classe.

  • Planification papier : Pour tous les projets il est très payant pour l’élève et l’enseignant de faire un plan du projet. Celui-ci aidera l’élève à ne pas s’éparpiller dans son code. Pour l’enseignant le plan devient l’outil principal pour «déboguer» le projet de l’élève.
  • Travail d’équipe : Scratch, tout comme la robotique, amène les élèves à s’entraider dans leur défi. Profiter de cet effet pour développer le travail en coopération.
  • Déboguage : L’enseignant ne pourra pas suivre à la brique près tous les projets de ses élèves, il sera donc assez difficile de pouvoir résoudre les problèmes (bogues) des élèves. On doit donc mettre en pratique sa compétence à résoudre des problèmes, décortiquer le projet (avec le plan) de l’élève, voir jusqu’où fonctionne le projet, faire verbaliser l’élève, etc.

La documentation disponible

La documentation à propos de Scratch est abondante sur le Web (recherche scratch tutoriel), mais nous vous conseillons de débuter avec le site officiel http://scratch.mit.edu/help/ et le site du RÉCT MST http://squeaki.recitmst.qc.ca/ . Des tutoriels à imprimer, des idées d’activités, des liens avec le programme de formation, vous y attendent.