ScratchJr est un langage de programmation graphique conçu pour apprendre la programmation aux enfants de 5 à 7 ans. En créant des projets dans ScratchJr, les jeunes enfants peuvent apprendre à penser de manière créative et à réfléchir systématiquement, sans savoir lire[1]. Il est disponible en tant qu'application gratuite pour iOS, Android et Chromebook, ainsi que comme programme pour ordinateur macOS et Windows grâce à une communauté open-source[2].
ScratchJr est une version modifiée et simplifiée du langage Scratch, qui a été utilisé par plus de 10 millions de personnes dans le monde. Cependant, la programmation dans Scratch nécessite des compétences de base en lecture, de sorte que les créateurs ont vu le besoin d'un autre type d'affichage qui permettrait ainsi aux enfants d'apprendre à programmer dès leur plus jeune âge, un moyen simplifié d'apprendre le codage à un plus jeune âge et sans aucune lecture requise.
ScratchJr a été développé par le MIT Media Lab, également à l'origine de Scratch, en coopération avec l'université Tufts, The Playful Invention Company ainsi que l'université américaine de Harvard. Il a reçu 1,3 million de dollars de la National Science Foundation et a levé des fonds supplémentaires sur la plateforme spécifique Kickstarter, utilisée aussi pour nombre d'autres projets[1].
La version initiale a été publiée en pour les iPad ; une adaptation Android est sortie en et un portage Chromebook a suivi en [3].
Une autre version, dénommée PBS Kids ScratchJr, a été publiée en 2015 en collaboration avec PBS Kids. Cette version possède des sprites et des arrière-plans récupérés depuis des séries animées pour enfants populaires telles que "Nature Cat" et "Wild Kratts".
Les enfants programment dans des éléments appelés sprites (une des grandes similitudes avec Scratch) - qui peuvent être des personnages ou des objets. Une bibliothèque de sprites est intégrée à ScratchJr (comme Scratch là encore) et lesdits sprites peuvent être modifiés ou créés grâce à un éditeur graphique.
Comme pour Scratch, la programmation se fait en assemblant des blocs. Toutefois, ces blocs sont horizontaux (contrairement à Scratch dans lesquels ils étaient verticaux) et affichent des icônes en lieu et place du texte habituel pour permettre aux enfants ne sachant pas lire de pouvoir coder tout de même.
L'interface utilisateur a été énormément simplifiée par rapport à celle de Scratch. Le nombre de catégories de blocs de programmation et de blocs dans chacune de ces catégories a été réduit, à tel point que seuls les plus élémentaires ont été conservés[4].
Catégorie | Remarques | |
---|---|---|
Évènements | Démarre les scripts et envoie des messages aux autres sprites | |
Mouvement | Déplace les sprites et modifie leur orientation | |
Apparence | Contrôle la visibilité, les costumes et les paroles des bulles affichées par les sprites | |
Son | Joue le son "pop" ou un enregistrement | |
Contrôle | Répète une partie du script autant de fois que spécifié par l'utilisateur | |
Fin | Se termine, se répète à l'infini et va à la zone spécifiée du projet |
En plus des sprites, les enfants peuvent ajouter des arrière-plans aux projets, pour en préciser le cadre et leur donner une atmosphère. Chaque arrière-plan est traité comme une page dans un livre et possède son propre ensemble de sprites (à la différence de Scratch). Un projet peut contenir jusqu'à 4 arrière-plans (contrairement à Scratch qui ne possédait aucun maximum).
Enfin, ScratchJr permet de travailler l'orientation absolue (briques de mouvement : haut - Nord ; bas - Sud ; droite - Est ; gauche - Ouest) contrairement à Scratch qui permet de travailler l'orientation relative (briques de mouvement : avancer, tourner à droite, tourner à gauche, etc.) et le repérage dans le plan (briques de mouvement : aller à, etc.).
Il a été employé dans les classes de maternelle de l'Eliot-Pearson Children's School de Medford, affiliée à l'Université Tufts, et de la Jewish Community Day School de Watertown, Boston. Ces écoles sont toutes deux situées aux États-Unis[4].
Dans le système éducatif français, ScratchJr est particulièrement bien adapté pour répondre aux besoins des programmes de mathématiques de 2018 concernant l'espace et la géométrie en cycles 2[5] et 3[6], pour le point « Programmer les déplacements d’un robot ou ceux d’un personnage sur un écran », car, contrairement à Scratch, il n'utilise pas de nombres relatifs (cycle 4) ou d'angles en degré (classe de 6e, dernière classe du cycle 3)[7]. Le site académique Prim à bord présente d'ailleurs des exemples d'usages à l'école[8].