Les blogues Contact

La zone d'échanges entre l'Université Laval,
ses diplômés, ses donateurs et vous

Les blogues de Contact

Photo de Margarida Romero

Et si on jouait à programmer?

Programmer peut être une activité plaisante, ludique et même très stimulante. Pour certains élèves, la programmation créative se révèle parfois plus amusante que d’autres activités d’apprentissage sollicitant moins leur pouvoir créatif. Alors, et si on jouait à programmer? Si on programmait des jeux pour apprendre la programmation?

Programmation-600

Longtemps, la programmation a été une activité spécialisée réservée aux professionnels ou aux passionnés de l’informatique. Mais aujourd’hui, avec la popularité d’outils de programmation visuelle comme Scratch, les élèves, dès le primaire, peuvent eux-mêmes créer un mini jeu vidéo. Et cette activité peut devenir une réelle expérience d’apprentissage ludique. On parle alors d’apprentissage par la création de jeux numériques. Ces élèves-programmeurs ne sont plus seulement des consommateurs interactifs de jeux numériques créés par des professionnels; ils sont des (co)créateurs de jeux numériques. Dans cette démarche, ce qui compte n’est pas le résultat (un mini jeu vidéo par rapport à une superproduction de jeu numérique), mais le processus de conception et de création dans lequel ils se sont engagés.

Avant de décrire les aspects qui rendent ludique l’activité de programmation visuelle avec Scratch, j’aimerais dire un mot sur le concept d’apprentissage par le jeu. Je proposerai aussi quelques exemples de jeux permettant d’apprendre à programmer.

Apprendre en jouant
L’apprentissage par le jeu vise à développer une expérience positive et amusante. Les résultats ne sont pas toujours meilleurs qu’en apprentissage conventionnel, mais l’activité d’apprentissage par le jeu est agréable et l’élève a plus de chances de se sentir partie prenante du début à la fin.

Comme on l’a observé au cours de l’histoire et auprès de différentes civilisations, le jeu est une activité humaine universelle. Les humains (ainsi que certaines autres espèces animales) utilisent le jeu pour le simple plaisir, bien sûr, mais aussi comme un mode de communication, d’interaction et de développement. Par le jeu, l’enfant appréhende le monde et se construit une représentation des règles en société. Bref, il apprend. Et cet apprentissage lui permet une certaine marge d’exploration créative où l’erreur ne présente pas de risques trop grands.

Par exemple, quand nous jouons le rôle de chirurgien dans un jeu médical comme Operate Now (en français) ou SurgeonSim (en anglais), une erreur chirurgicale n’aura pas de conséquences sur un patient réel, mais permettra au joueur de découvrir son erreur et, éventuellement, de la corriger. Dans certains cas, le jeu offre une possibilité de rétroaction à l’utilisateur en classe pour lui faire apprendre de ses erreurs. Dans d’autres cas, il n’y a pas de rétroaction possible, mais l’enseignant peut aider l’élève à déceler et à analyser ses erreurs.

Ainsi, d’une part, l’apprentissage par le jeu s’avère une forme d’apprentissage par l’exploration permettant d’éviter les conséquences malheureuses de la pratique dans la vie réelle. D’autre part, le jeu amène des résultats –et donc des possibilités de réparation– plus rapides que dans la réalité, ce qui peut servir d’entraînement pour affronter diverses situations. Pensons à SimCity (en anglais), avec la possibilité qu’il offre de prendre des décisions urbanistiques et d’en voir les conséquences sur une échelle de temps accéléré.

Jouer à ces jeux numériques permet donc aux élèves d’apprendre… surtout si l’enseignant rend explicites les intentions pédagogiques et facilite l’(auto)évaluation. Avec le jeu, l’utilisateur peut agir dans la marge d’interaction potentielle que les mécaniques d’apprentissage lui permettent.

Apprendre à programmer
Parmi les jeux numériques ayant des objectifs pédagogiques, ou jeux sérieux éducatifs, ceux qui visent l’apprentissage de la programmation sont de plus en plus nombreux. Mentionnons, tous 3 en anglais, CodeCombat, Coding Game ou encore Screeps. Ces jeux permettent l’apprentissage de la programmation dans le cadre d’un univers qui reprend les mécaniques de jeu habituelles, axées sur les points et sur des défis de difficulté croissante.

Tout comme les autres jeux sérieux éducatifs, ceux qui visent l’apprentissage de la programmation sont fondés sur l’aspect ludique. À partir de l’observation d’élèves du primaire et du secondaire qui ont utilisé Scratch, il a été possible d’établir 3 principes ludiques (basés sur le modèle de mécaniques de jeu et d’apprentissage de Proulx, Romero et Arnab1):

  1. La mécanique de rétroaction immédiate: Dans l’environnement Scratch, les élèves mettent en œuvre des instructions de code dans la fenêtre de programmation, qu’ils peuvent tester directement dans la fenêtre d’animation.
  2. Des règles basées sur le jeu: L’environnement Scratch est régi par des règles qui permettent l’exploration dans le but d’atteindre un objectif de création. Ces règles rejoignent les mécaniques de jeu (LM-GM2) d’exploration, de découverte et d’identification. En ce sens, la découverte des propriétés des blocs de programmation s’apparente à la mécanique de metagame par laquelle le programmeur en herbe peut jouer à découvrir les différents éléments qui composent les blocs de la librairie de programmation.
  3. La mécanique de stratégie: La démarche de programmation créative, qui nécessite d’analyser une situation-problème pour structurer les entités, organiser les données et définir les comportements par des algorithmes, est en lien avec la mécanique de stratégie. Tant pour les jeux que pour la programmation, l’atteinte des objectifs d’une difficulté majeure nécessite la décomposition en objectifs intermédiaires et la définition d’une stratégie visant à atteindre le but.

Comme je le mentionnais plus haut, dans une démarche d’apprentissage de la programmation par la création d’un jeu numérique sur Scratch, ce n’est pas tant le résultat qui importe que le processus engagé pendant les activités de conception, de création et de réflexion. Le but n’est pas de produire un résultat exploitable commercialement, mais d’atteindre des objectifs de jeu et d’apprentissage.

Pour terminer, je vous invite à explorer un jeu créé par une étudiante universitaire avec Vibot, Scratch passe l’Halloween, ainsi qu’un ensemble de défis créatifs pour accompagner vos élèves dans des activités de programmation créative, Du conte au code avec Scratch et Vibot.

Et si on jouait à programmer? Et si on programmait des jeux?

Haut de page
  1. Aucun commentaire pour le moment.

Note : Les commentaires doivent être apportés dans le respect d'autrui et rester en lien avec le sujet traité. Les administrateurs du site de Contact agissent comme modérateurs et la publication des commentaires reste à leur discrétion.

commentez ce billet

M’aviser par courriel des autres commentaires sur ce billet