PRIMM : une démarche pour enseigner la programmation

PRIMM signifie Predict - Run - Investigate - Modify - Make (Prédire, exécuter, enquêter, modifier, créer).
Ce modèle cherche à aider les enseignants à concevoir des situations d’enseignement dans lesquelles les élèves s’engagent de manière progressive dans leur compréhension du code.

Les cinq étapes de PRIMM

Prédire

Les élèves commencent avec le code d’un programme qui fonctionne, et sont invités à l’examiner et à prédire ce qu’il fait. Ils peuvent dessiner ou écrire ce qu’ils pensent être le résultat.

Exécuter

Les élèves exécutent le code et observent ce que fait le programme, testant leurs prédictions.

Enquêter

Ils entrent ensuite dans les détails, examinent le programme ligne par ligne et explorent comment il fait ce qu’ils ont prédit puis observé lorsqu’ils l’ont exécuté. L’enseignant propose une gamme d’activités pour explorer la structure du code, telles que le tracé, l’explication, l’annotation, le débogage, etc.

Modifier

Les élèves utilisent la compréhension qu’ils ont développée du code pour le modifier afin de changer ses fonctionnalités, via une séquence d’exercices de plus en plus difficiles ; le transfert de propriété passe du code « n’étant pas à moi » à « partiellement mien » à mesure que les élèves gagnent en confiance en étendant la fonction du code.

Créer

En utilisant les concepts du programme qu’ils ont maintenant compris et adaptés, les élèves créent un nouveau programme qui résout un problème différent.

Il existe trois principes clés sous-jacents à PRIMM, tous issus de la recherche sur l’enseignement de la programmation informatique :

  • Le premier est que les élèves doivent lire avant d’écrire. En alphabétisation, nous apprenons à lire d’abord, et à un niveau supérieur à ce que nous pouvons écrire. Nous apprenons en lisant des exemples de mots écrits. La même chose peut s’appliquer à la programmation. Il existe un nombre important de recherches sur les programmes de tracé et de lecture qui ont montré que la lecture préalable est bénéfique pour les programmeurs novices.
  • Deuxièmement, les étudiants devraient parler de leurs programmes. Cela fonctionne à trois niveaux : nous devons trouver le bon langage ou la bonne terminologie à utiliser pour articuler notre compréhension ; nous sommes aidés par la verbalisation de ce qui peut être un méli-mélo complet dans notre tête, et le dialogue avec les autres contribue également à la compréhension.
  • Enfin, les élèves doivent commencer avec un code qui ne leur appartient pas. L’utilisation d’un programme de démarrage, écrit par quelqu’un d’autre qui prend la responsabilité de tout bogue, réduit la tension émotionnelle causée par l’échec de nos programmes. En fournissant du code écrit par quelqu’un d’autre comme tremplin, nous protégeons nos élèves de la déception, de l’anxiété et de la frustration que nous avons tous ressenties lorsque nos programmes échouent. Ceci est particulièrement important pour les jeunes apprenants, mais s’applique à quiconque apprend à coder.
Sue Sentance Chief Learning Officer à la Raspberry Pi Foundation

traduit / adapté de l’article de Sue Sentance, page 50, Hello World 14.

Autres documents relatifs à PRIMM :

  • Une présentation du modèle PRIMM est disponible (en anglais) sur le site de la fondation RaspberryPi.
  • Une session (en anglais) du séminaire de la fondation Raspberry pi : "PRIMM : encouraging talk in programming lessons" par Sue Sentance

Partager

Imprimer cette page (impression du contenu de la page)