ANNONCE
L'École branchée, un organisme à but non lucratif
ANNONCE

Cinq conseils à garder en tête pour enseigner efficacement la programmation

Bien que la programmation gagne en popularité, son enseignement demeure méconnu et peut s’avérer un réel défi pour les enseignants. Notre collaborateur Hugo G. Lapierre présente 5 conseils pour favoriser l'apprentissage du codage par les élèves.

Publié le :

Classé dans :

Attention! Ce contenu a été mis à jour il y a plus de 3 ans. Il pourrait contenir des liens qui ne fonctionnent plus. N'hésitez pas à nous écrire si vous en trouvez!

Par Hugo G. Lapierre, chargé de cours en intégration des technologies à la pratique enseignante à l’Université du Québec à Montréal

La programmation est une discipline qui occupe une place de plus en plus importante au sein du cursus des écoles primaires et secondaires du Québec, que ce soit sous la forme de concentrations, d’activités parascolaires, ou encore, de manière plus indirecte, par l’utilisation de la robotique pour contextualiser des apprentissages en mathématiques ou en sciences.

Toutefois, bien que la programmation gagne en popularité, son enseignement demeure méconnu et peut s’avérer un réel défi pour les enseignants. À ce titre, l’article de Brown et Wilson (2018) met en lumière des conseils pratiques, issus d’une revue de la littérature scientifique du domaine de la didactique de la programmation.

Ces conseils, somme toute assez simples, sont susceptibles de favoriser l’apprentissage des élèves. Parmi l’ensemble des conseils que proposent ces auteurs, les cinq plus essentiels ont été retenus et sont ici présentés.

1- Croire en la capacité de tous ses élèves d’apprendre à programmer

La programmation est un apprentissage réputé comme étant difficile et souvent associé à des performances très contrastées chez les élèves, ce qui peut laisser croire que certains auraient des aptitudes innées pour la programmation et d’autres non.

Il a même été proposé qu’un « gène de la programmation » (“geek gene”) puisse expliquer la facilité de certains élèves pour la programmation (et, à l’inverse, la difficulté des autres qui seraient dépourvus de ce gène). Or, cette hypothèse n’a reçu aucun soutien scientifique à ce jour et a même été fortement critiquée en raison de son caractère simpliste et déterministe : il s’agit selon plusieurs auteurs du mythe le plus durable, le plus répandu et le plus nuisible à l’apprentissage de l’informatique.

En ce sens, le premier conseil est simplement de croire en la capacité de tous les élèves d’apprendre à programmer. L’apprentissage de la programmation n’est pas inné et, comme pour tout apprentissage, les habiletés en programmation peuvent se développer et s’améliorer par la pratique.

Il apparaît donc risqué de croire que « certains enfants peuvent réussir et d’autres non », car adhérer à cette fausse croyance peut malheureusement influencer négativement les interventions pédagogiques destinées aux élèves qui éprouvent plus de difficulté, et même nuire à leur apprentissage.

2- Ne pas seulement travailler le volet « écriture » de la programmation

Le deuxième conseil renvoie à l’importance de ne pas seulement travailler les habiletés liées à l’écriture de la programmation. En effet, bien que la littérature mette en évidence des défis importants liés à la syntaxe, à la sémantique et à la conception de lignes de code fonctionnelles et efficaces, il importe également de développer les compétences des apprenants en lecture de code ainsi qu’en débogage (debugging), deux compétences trop souvent négligées dans les premiers apprentissages des novices, mais pourtant essentielles.

Pour ce faire, il est nécessaire de développer et de prévoir des activités où les élèves lisent et commentent des lignes de code non-fonctionnelles ou non-optimales en vue de les corriger, en parallèle à des activités plus traditionnelles où les élèves rédigent du code.

3- Prévoir des séances de programmation avec un pair

La programmation avec un pair est une pratique de programmation où deux programmeurs partagent un même ordinateur. Ce type de programmation en dyade est non seulement une pratique de la programmation souvent employée sur le marché du travail, mais les recherches indiquent qu’il s’agit également d’une bonne façon d’apprendre.

En effet, les élèves qui travaillent en dyade peuvent coopérer pendant les exercices pratiques, ce qui est de nature à les encourager davantage. Ils peuvent, en plus, s’entraider pour clarifier les incompréhensions de l’autre durant la tâche. Cela a pour effet de contribuer à l’apprentissage des deux parties : l’élève le plus faible peut bénéficier des explications individuelles reçues de la part du plus fort, tandis que l’élève le plus fort consolide son apprentissage en devant expliciter sa pensée, ce qui nécessite qu’il réactive des notions auxquelles il n’a peut-être pas pensé depuis longtemps.

Brown et Wilson (2018) indiquent également que lorsque la programmation en dyade est utilisée, il est important que tous les élèves soient placés en dyade, et non seulement les apprenants qui ont des difficultés, afin que personne ne se sente isolé.

D’un point de vue pratico-pratique, ce conseil est d’autant plus intéressant, car il réduit du même coup la quantité de matériel nécessaire en salle de classe, ce qui représente souvent une contrainte importante. Il n’est cependant pas recommandé de mettre en équipe trois apprenants par ordinateur ou robot, car le troisième membre s’en trouve souvent isolé et ne prend pas part activement à la tâche.

4- Utiliser le codage en direct

En complément à la présentation de lignes de codes pré-produites via des diapositives ou au sein d’un cahier pédagogique, les enseignants devraient aussi essayer, le plus souvent possible, de rédiger en temps réel des lignes de code devant leurs élèves. Cette stratégie pédagogique permet ainsi aux apprenants d’observer comment un expert diagnostique et corrige ses erreurs au fur et à mesure, ce que les novices ont énormément besoin de faire, mais qui est malheureusement absent de la plupart des manuels scolaires.

Cette stratégie présente aussi l’avantage de ralentir les enseignants qui ont souvent tendance à présenter le code trop rapidement, ce qui peut provoquer le désengagement de leur auditoire. Cela permet en plus de susciter des questions précises chez les élèves qui pourraient, par exemple, chercher à comprendre en temps réel le raisonnement derrière l’utilisation d’une fonction plutôt qu’une autre.

5- S’en tenir à un seul langage de programmation durant l’apprentissage

Enfin, le dernier conseil s’arrime à un principe de base en éducation qui s’applique à plusieurs domaines : le transfert ne se fait qu’avec la maîtrise. Ainsi, il apparaît préférable que l’enseignant sélectionne un seul langage de programmation et s’en tienne à celui-ci jusqu’à ce que les apprenants aient suffisamment progressé avant d’en introduire un deuxième ou même de changer de langage. La littérature semble en effet indiquer que le transfert d’un langage de programmation à l’autre, lorsqu’introduit trop tôt dans le processus d’apprentissage, est susceptible de désorienter les élèves et de contribuer à éroder leur confiance.

Vous faites de la programmation avec vos élèves ou vous utilisez la robotique pour contextualiser des apprentissages? Partagez votre expérience et vos projets avec nous en écrivant à [email protected].

Référence complète du texte vulgarisé : Brown, N. C., & Wilson, G. (2018). Ten quick tips for teaching programming. PLoS computational biology, 14(4), e1006023. 

En complément : Lisez l’article Intégrer la robotique éducative à la salle de classe de Hugo G. Lapierre, paru dans Spectre, le magazine de l’Association pour l’enseignement de la science et de la technologie au Québec.

À propos de l'auteur

Collaboration spéciale
Collaboration spéciale
L'École branchée diffuse des textes provenant d'acteurs de la communauté éducative. Vous pouvez contribuer vous aussi! Profitez-en pour transmettre vos idées, parler d'un projet pédagogique vécu en classe, etc. Trouvez les détails dans le menu À propos / Soumettre un article.

Commentaires, reproduction de textes et usage de l'intelligence artificielle

Pour commenter un article et y ajouter vos idées, nous vous invitons à nous suivre sur les réseaux sociaux. Tous les articles y sont publiés et il est aussi possible de commenter directement sur Facebook, X, Instagram, Bluesky ou LinkedIn.

Sauf dans les cas où la licence est expressément indiquée, il n'est pas permis de reproduire les articles de l'École branchée. Toute demande de reproduction doit être adressée directement à l'organisme.

Dans son processus éditorial, notre équipe fait appel à des technologies intégrant l'intelligence artificielle pour améliorer les textes, entre autres par la reformulation de passages, la révision linguistique, la traduction et la synthèse des idées. Tous les textes sont révisés par des humains avant leur publication.

Recevez l'infolettre Hebdo

Recevez l'infolettre Hebdo mardi #Actu et vendredi #DevProf pour ne rien manquer des nouveautés de l'École branchée!


Faites briller vos projets pédagogiques et pratiques gagnantes!

Chaque histoire positive a le potentiel d'inspirer d'autres acteurs de l'éducation à innover pour améliorer la réussite éducative! L'École branchée vous offre ses pages pour faire circuler l'information dans le milieu scolaire, alimenter la veille professionnelle et valoriser les initiatives émanant du terrain. Allez-y, proposez-nous un texte! >

À lire aussi

Construire une maison intelligente pour sensibiliser les élèves aux changements climatiques

Alors que le phénomène des changements climatiques occupe de plus en plus d’espace médiatique, les élèves doivent pouvoir en apprendre davantage sur le sujet. C’est à travers un projet de domotique que Vicky D'Astous, enseignante au 3ᵉ cycle à l’École Notre-Dame de St-Norbert D'Arthabaska, appuyée par le conseiller pédagogique, Sébastien Bergeron, a réussi à sensibiliser ses élèves au printemps 2024.

Intégrer la programmation aux cours de mathématiques de la première à la cinquième secondaire

Lors du 12e Sommet du numérique en éducation, Kathleen Quesnel, enseignante en 2e secondaire au Collège Durocher Saint-Lambert (CDSL), a présenté le projet d’intégration de la programmation informatique aux cours de mathématiques dans son établissement scolaire. On vous en dit plus.

Minecraft : Nous vous racontons notre expérience d’apprentissage par le jeu vidéo

Des élèves de cinquième année de l’école primaire de l’Envol, du Centre de services scolaire des Navigateurs (CSSDN), vous présentent eux-mêmes leur expérience d’apprentissage avec Minecraft. Nous leur avons posé plusieurs questions pour mieux comprendre leur vision de l’apprentissage par le jeu vidéo ainsi que les éléments à mettre en place pour que ce type de projet fonctionne en classe.