Revue Radix

Recherches et Recherches-actions en didactique de l'informatique

Conception et analyse d’une activité instrumentale pour la découverte de la notion de pile en spécialité NSI en terminale

Declercq, C., Hoarau, S., Chane-Lune, S., Nativel, F., Schroeder, S.

Résumé

Nous proposons une activité instrumentée pour faire découvrir aux élèves la nécessité et le fonctionnement de la pile en spécialité NSI de la classe de terminale. Cette structure de données a de nombreux usages dont le plus caractéristique est la fonction undo telle qu'elle est mise en œuvre dans les logiciels d’édition de textes ou d’images. Nous proposons un jeu de recherche à résoudre en solitaire : le jeu de saute-mouton. Ce jeu a des règles de déplacements très simples, mais son déroulement amène à des situations de blocage où le joueur souhaiterait revenir en arrière pour tester un autre déplacement. Une mise en œuvre instrumentée permet d'effectuer l'activité en ligne à l'aide d'un navigateur, tout en recueillant les données d'apprentissage des élèves. Nous présentons tout d’abord une rapide analyse épistémologique et curriculaire, l’activité proposée, puis le cadre théorique de cette recherche, ses hypothèses et les expérimentations menées dans trois lycées de l'académie de La Réunion. Nous discutons ensuite les hypothèses à la lumière des expérimentations menées.

Abstract

We provide a hands-on activity designed to familiarize students with the use-cases and operations of the stack data structure within the NSI specialty in 13th grade (classe terminale in France). The stack data structure serves various purposes, one of its most notable applications being the implementation of the undo function in text or image editing software. Our scientific experiment consist of a solitaire research game known as the leapfrog game. This game features straightforward movement rules, however its progression often leads to situations where players are facing obstacles, during wich the players wants to backtrack in order to test other movement. An instrumented implementation enables the activity to be conducted online via a browser, facilitating the collection of valuable student learning data. Our presentation begins with a brief epistemological and curricular analysis, followed by an exploration of the proposed activity, the theoretical framework underpinning this research, its hypotheses, and the experiments conducted in three high schools within the Réunion academy. In conclusion, we engage in a discussion evaluating the hypotheses in light of the experiments conducted.

Télécharger l'article

Citer : Declercq, C., Hoarau, S., Chane-Lune, S., Nativel, F., Schroeder, S. (2024) Conception et analyse d’une activité instrumentale pour la découverte de la notion de pile en spécialité NSI en terminale, Radix, 1.

Quels apprentissages fondamentaux pour le codage informatique. Réflexions autour d’une pratique en maternelle.

De Vittori, T., Priem, P.

Résumé

Dans cet article, nous proposons un exemple d’utilisation de robots éducatifs pour l’initiation au codage informatique dès le plus jeune âge. Dans un premier temps, nous présentons une séquence de classe complète avec le Blue-Bot réalisée à l’école maternelle. Nous y détaillons les différents supports et les procédures des élèves qui donnent à voir certains apprentissages fondamentaux de l’informatique. Ces premiers apprentissages comme la question de la syntaxe, des essais-erreurs, sont ensuite mis en parallèle de quelques pratiques professionnelles du codage. Pour cela, nous nous appuyons sur une petite enquête diffusée à des informaticiens en entreprise.

Abstract

In this paper, we offer an example of use of educational robots for the initiation to computer coding from a very young age. First, we present a complete teaching sequence with the Blue-Bot carried out in kindergarten. We detail the different materials and the procedures of the pupils which show some fundamental learning of computer science. These first learnings, such as syntax, trial and error, are then questioned in relation to some professional coding practices. For this, we rely on a small survey spread to computer scientists in companies.

Télécharger l'article

Citer : De Vittori, T., Priem, P. (2024) Quels apprentissages fondamentaux pour le codage informatique. Réflexions autour d’une pratique en maternelle, Radix, 1.

Class? en classe : jouer avec des classifications pour combiner mathématiques et informatique

van den Berg, L., Euzenat, J.

Résumé

Class? est un jeu dans lequel les joueurs doivent organiser leurs cartes en fonction d’une classification cachée. Les cartes posées par les autres joueurs leur permettent de deviner où mettre les leurs. Il a été conçu pour que des écoliers appréhendent que les mêmes objets peuvent être classés de différentes manières et qu’il est possible de transmettre une classification sans l’expliciter. Le jeu fait appel a des notions qui se présentent facilement à l’aide des cartes à jouer comme des ensembles définis par des conditions nécessaires et suffisantes (classes). Cela permet d’introduire des classifications hiérarchiques et des notions algorithmiques (tests de conditions, récursion) pour les manipuler. Enfin, il nécessite de raisonner logiquement sur ces notions. Class? a été joué avec succès par des élèves du CM2 à la seconde. Nous nous sommes donc posé la question de son positionnement en tant que ressource pédagogique. Il apparait tout d’abord qu’il ne semble pas illustrer de concepts particulièrement mis en avant par les programmes officiels de l’éducation nationale. Il offre plutôt une manière alternative de renforcer des notions transversales très importantes en informatique. Nous caractérisons Class? par rapport aux efforts d’informatique sans ordinateurs et à d’autres jeux utilisables à cette fin. Finalement, nous discutons d’une décomposition de Class? en une succession de jeux plus simples permettant d’introduire les notions impliquées l’une après l’autre.

Abstract

Class? is a game in which players have to organise their cards according to a hidden classification. Cards disposed by other players help to guess where to play cards. The game has been designed for pupils to understand that the same objects may be classified in different ways and that it is possible to transmit a classification without disclosing it. It calls for notions that are easily presented with cards, such as sets defined by necessary and sufficient conditions (classes). They facilitate the introduction of hierarchical classifications and algorithmic concepts (boolean tests, recursion) to manipulate them. Finally, it requires to reason logically on these concepts. We have used Class? with pupils from fourth to tenth grade. Hence we considered its suitability as a pedagogical resource. It appears that Class? does not seem to illustrate concepts explicitly promoted by the official programs of the French education ministry. Instead, it offers and alternative manner to reinforce transverse concepts very important in computer science. We position Class? with respect to “computer science unplugged” efforts to teach computer science without computers and comparable games. Finally, we discuss the possible decomposition of Class? in a sequence of smaller games allowing us to introduce the involved concepts progressively.

Télécharger l'article

Citer : van den Berg, L., Euzenat, J. (2024) Class? en classe : jouer avec des classifications pour combiner mathématiques et informatique, Radix, 1.

Retour d’expérience de formation des enseignants d’informatique : constats et enjeux didactiques

Jolivet, S., Wang, P., Dechaux, E.

Résumé

Sur la base d’un retour d’expérience de trois formateurs d’enseignants en informatique en Suisse romande, nous présentons diverses questions soulevées en formation, d’une part en lien avec des aspects curriculaires et d’autre part en lien avec des questions d’enseignement. Pour chaque thème abordé, nous partons de constats qui sont problématisés et nous présentons quelques réponses travaillées en formation, avec, notamment, la mobilisation de différents apports de la didactique. Après avoir précisé différents éléments de contexte, nous abordons les aspects liés à l’introduction de la discipline scolaire informatique ; les conséquences de la diversité des rapports personnels des enseignants stagiaires à la discipline informatique et à son enseignement ; le travail sur les progressions annuelles et les ressources ; l’impact de l’organisation spatiale des classes ; puis nous terminons par des questions en lien avec l’évaluation.

Abstract

This article reports on the authors’ experience in training secondary computer science teachers in French-speaking Switzerland. We present issues commonly raised during our courses and originating either from curricular or teaching decisions and describe how we tackle them using several concepts drawn from didactics. After a brief description of the cultural context, we treat questions related to: the introduction of this new discipline in secondary education; the diversity of answers regarding what computer science is and what ought to be taught; the construction of an annual plan and design of educational resources; the spatial arrangement in the classroom and its effects on teaching practices; and finally, the several means of evaluating students’ works in computer science.

Télécharger l'article

Citer : Jolivet, S., Wang, P., Dechaux, E. (2024) Retour d’expérience de formation des enseignants d’informatique : constats et enjeux didactiques, Radix, 1.

Booléens en programmation : une analyse à destination des enseignants

Commission Inter-IREM Informatique

Résumé

La notion de booléen est fondamentale en informatique. Même si elle paraît simple à première vue, son introduction dans les premiers apprentissages de la programmation révèle un certain nombre de difficultés liées au fait qu’elle est associée à plusieurs concepts généraux de l’informatique : types de données, valeurs de vérité, invariants, structures de contrôle... Partant de ce constat, l’objectif de cet article est de proposer quelques réflexions sur le rôle des booléens en programmation. On détaille certains points relatifs aux « bonnes pratiques » possibles, en particulier dans le cadre de l’enseignement de l’informatique. On s’intéresse notamment au booléen comme type de données et aux principales structures de contrôle faisant appel à des booléens ainsi qu’à la notion générale d’expression booléenne utilisée en programmation. On identifie enfin quelques usages emblématiques des variables booléennes par l’intermédiaire d’exemples variés.

Abstract

The notion of boolean is fundamental in computer science. Even if it seems simple at first sight, its introduction in the first stages of programming education reveals a number of difficulties related to the fact that it is linked to several general concepts of computer science: data types, truth values, invariants, control structures... Starting from this observation, the point of this article is to propose a reflection on the role of booleans in programming. We elaborate on some points concerning possible “good practices”, especially in the context of computer science teaching. In particular, we focus on boolean as a data type and on the main control structures using booleans. We also discuss the general notion of boolean expression used in programming. Finally through a few examples, we illustrate some typical uses of boolean variables.

Télécharger l'article

Citer : Commission Inter-IREM Informatique (2024) Booléens en programmation : une analyse à destination des enseignants, Radix, 1.

Dispositif didactique débranché pour apprendre à résoudre des problèmes algorithmiques numériques et à les programmer

Blanvillain, C.

Résumé

Présentation d’un dispositif didactique débranché pour apprendre à programmer dans un langage très simple, avec peu d’instructions et proche de l’assembleur. Le code est représenté par des instructions en bois que l’on assemble. L’élève trace les états de la mémoire à la main tout en lisant son code pas à pas, en s’aidant d’un papier et d’un crayon, ce qui lui permet de se constituer rapidement une représentation mentale de la machine notionnelle associée. L’alternance de moments de programmation en binômes et de moments de réflexion en grand groupes permet de développer simultanément les compétences en conception d’algorithmes et l’aptitude à analyser les stratégies cognitives mobilisées dans l’acte de penser les algorithmes. Le témoignage des élèves nous montre que le dispositif leur a appris non seulement à programmer, mais aussi à raisonner.

Abstract

This paper introduces an unplugged didactic device designed to learn to program in a very simple language, with few instructions and close to assembly language. The code is represented by wooden instructions that are assembled. The student traces the states of memory by hand while reading their code step by step, using paper and a pencil, which allows them to quickly construct a mental representation of the associated notional machine. The alternation of moments of pair programming and moments of reflection in large groups allows to simultaneously develop algorithm design skills and the ability to analyze the cognitive strategies used in algorithmic thinking. Student testimonials show that the device has taught them not only to program, but also to reason.

Télécharger l'article

Citer : Blanvillain, C. (2025) Dispositif didactique débranché pour apprendre à résoudre des problèmes algorithmiques numériques et à les programmer, Radix, 2.

Découvrir le concept d'itération au collège : des activités d’informatique débranchée sur les déplacements et les traces

Hamm-Audonnet, R., Schwartz-Commecy, S., Derouet, C., Sauvage, B.

Résumé

Dans le cadre de l’enseignement des mathématiques au collège en France, il est attendu des élèves, à la fin de la cinquième, d'écrire un script de déplacement ou de construction géométrique utilisant la boucle < répéter… fois >. L’article s’intéresse à l’enseignement de l’informatique, et plus particulièrement à l’introduction du concept d’itération au collège. L’objectif de cet article est de présenter et d’analyser deux activités d’informatique débranchée sur les déplacements et les tracés, pour découvrir le concept d’itération, conçues autour d’un jeu et expérimentées dans des classes de sixième et de cinquième. Les activités s’appuient sur un jeu de cartes avec des instructions Scratch permettant de se déplacer sur un quadrillage. Dans la première activité, les élèves doivent avancer sur le quadrillage librement, à l’aide de cartes tirées au hasard. Dans la deuxième activité, le chemin est imposé, les élèves doivent proposer différentes suites d’instructions permettant de suivre ce chemin. Le défi est d’utiliser un minimum d’instructions. L’utilisation de boucles permet de relever ce défi.

Abstract

As part of the teaching of mathematics in lower secondary schools in France, students are expected, by the end of grade 7 (cinquième), to be able to write scripts for movement or geometric constructions using the < repeat ... times > loop. This article focuses on the teaching of computer science, and more specifically on the introduction of the concept of iteration at the lower secondary school level. The goal is to present and analyze two activities in computer science unplugged centered on movement and path drawing, designed to make discover the concept of iteration. These activities, built around a game, were tested in grades 6 (sixième) and 7 (cinquième) classes. They use a card game with Scratch instructions to move on a grid. In the first activity, students move freely on the grid using randomly drawn instruction cards. In the second activity, the path is predetermined, and students must come up with various sequences of instructions allowing to follow it. The challenge is to use as few instructions as possible. Using loops is a means to meet this challenge.

Télécharger l'article

Citer : Hamm-Audonnet, R., Schwartz-Commecy, S., Derouet, C., Sauvage, B. (2025) Découvrir le concept d'itération au collège : des activités d’informatique débranchée sur les déplacements et les traces, Radix, 2.

Retour d’expérience avec un jeu-débat pour sensibiliser à l’IA pour la surveillance sanitaire

Adam, C., Lauradoux, C.

Résumé

L'importance de l'Intelligence Artificielle dans la société, et des décisions qui lui sont déléguées (accès aux formations supérieures, détermination de peines de prison, conduite autonome de véhicules, etc) nécessite d'éduquer la population à ses enjeux. Tout le monde ne peut pas avoir une connaissance technique précise sur l'IA, mais comme souligné par l’UNESCO, il est essentiel que la population ait une compréhension basique du fonctionnement de ces algorithmes pour choisir en connaissance de cause de les utiliser ou pas. Pour cela nous avons développé un jeu sérieux à destination des lycées, sous la forme d’un débat citoyen ayant pour but de choisir une solution d’IA pour contrôler une épidémie. Cet article présente un retour d'expérience de l'utilisation de ce jeu en classe. Nous décrivons le fonctionnement d'une séance, les résultats qualitatifs et quantitatifs des premières sessions animées, ainsi que les biais et limites de cette activité.

Abstract

The importance of Artificial Intelligence in society, and of the decisions delegated to it (access to higher education, prison sentences, autonomous vehicles) entails the necessity to educate the population to the associated stakes. Not everybody can learn the technical details behind AI, but as highlighted by UNESCO, it is essential to provide the population with a general understanding of AI algorithms so that they can choose wisely whether to use them or not. To this end, we propose a serious game targeted at high school students, in the form of a civic debate aiming at selecting an AI solution to control a pandemic. This article presents a return of experience of using this game in class. We detail the progression of game sessions, provide qualitative and quantitative results about the first test sessions, and discuss biases and limitations of this activity.

Télécharger l'article

Citer : Adam, C., Lauradoux, C. (2025) Retour d’expérience avec un jeu-débat pour sensibiliser à l’IA pour la surveillance sanitaire, Radix, 2.

Caractérisation de la pensée algorithmique en mathématiques pour la recherche en didactique des mathématiques

St-Cyr, M.-F., Squalli, H., Bousadra, F.

Résumé

La pensée algorithmique est au cœur de l’activité mathématique. Elle est aussi présente dans l’activité informatique. Dans ce texte, nous l’abordons en mobilisant la théorie de l’objectivation de Radford (2011). Dans cette perspective, la pensée algorithmique en mathématiques renvoie à une manière d’agir et de réfléchir dans des activités mathématiques qui font intervenir au moins un algorithme pouvant être exécuté par un agent du traitement de l’information. Sur la base d’une analyse des écrits scientifiques et professionnels, nous avons élaboré un cadre de référence visant à caractériser la pensée algorithmique en mathématiques pour un usage en didactique des mathématiques. Ce cadre est structuré autour de trois classes d’activités caractéristiques de la pensée algorithmique en mathématiques qui ont été identifiées.

Abstract

Algorithmic thinking is at the heart of mathematical activity. It is also present in computing activity. In this text, we approach it by mobilizing Radford's theory of objectification (2011). From this perspective, algorithmic thinking in mathematics refers to a way of acting and thinking in mathematical activities that involve at least one algorithm that can be executed by an information-processing agent. These activities include the automation of algorithms. On the basis of an analysis of scientific and professional literature, we have developed a framework to characterize algorithmic thinking in mathematics for use in mathematics didactics. This framework is structured around three classes of activities that have been identified as characteristic of algorithmic thinking in mathematics. Keywords. Mathematical thinking, algorithmic thinking, computational thinking, theory of objectification.

Télécharger l'article

Citer : St-Cyr, M.-F., Squalli, H., Bousadra, F. (2025) Caractérisation de la pensée algorithmique en mathématiques pour la recherche n didactique des mathématiques, Radix, 2.

Bonne donne ou maldonne, vers la correction partielle d’un algorithme

Barraud, M., Brocard, A., Chauvin, P., Colombel, J.-A.,Desmontils, E., Lambert, J.-M., Lemaitre, E.

Résumé

L’algorithmique est une des entrées du programme officiel de NSI. Il y est inscrit la nécessité de prouver la correction d’un algorithme. Il est attendu d’un élève la capacité à écrire un invariant de boucle et de montrer la terminaison à l’aide d’un variant de boucle. Le sujet de cet article est de proposer une situation didactique permettant d’introduire simplement ces notions pour des élèves de première. Il s’agit de décrire comment des élèves, à travers une activité débranchée, peuvent être amenés à un travail plus théorique autour de la correction d’algorithme. Les élèves travaillent sur un algorithme de division euclidienne, sans qu’il soit formulé ainsi et sans lien direct avec l’arithmétique ni son implémentation : il leur est demandé de réfléchir à la distribution de cartes. Les post-conditions sont introduites en définissant la « bonne donne » et permettent d’engager le travail de correction d’algorithme. Deux mises en œuvre en classe nous ont fait nous focaliser sur la correction partielle. Deux autres mises en œuvre nous permettent une première analyse et d’envisager certaines améliorations.

Abstract

Algorithmics is one of the entries in the official NSI program. It states the need to prove the correctness of an algorithm. A student is expected to be able to describe a loop invariant and show the termination using a loop variant. The subject of this article is to propose a didactic situation, allowing these concepts to be simply introduced to first-grade students. This involves describing how students, through an unplugged activity, can be led to more theoretical work around algorithm correction. The students work on a Euclidean division algorithm without it being formulated like this and without a direct link to arithmetic or its implementation: they are asked to think about the distribution of cards. The post-conditions are introduced by defining the “good deal” and allow the algorithm correction work to begin. Two classroom implementations made us focus on partial correction. Two other implementations allow us to conduct an initial analysis and consider some improvements.

...article téléchargeable bientôt en ligne...

Citer : Barraud, M., Brocard, A., Chauvin, P., Colombel, J.-A.,Desmontils, E., Lambert, J.-M., Lemaitre, E. (2025) Bonne donne ou maldonne, vers la correction partielle d’un algorithme, Radix, 2.

Activité - Programmation d’automobile autonome a la manière de Héron d’Alexandrie

Corot, E.

Résumé

Les premiers automates ont été évoqués par Homère dans l’Iliade avec le terme d'αὐτόματος comme machines qui se meuvent d’elles-même. Cet article revisite l'héritage des automates anciens à travers les innovations d'Héron d'Alexandrie. Les automates, jadis utilisés dans les temples et les théâtres, ont inspiré des mécanismes ingénieux tels que les portes automatiques. Héron a également conçu des trépieds autonomes, préfigurant les véhicules autonomes modernes. La programmation de ces trépieds, basée sur des axes et des clous, a été démontrée à travers des ateliers pratiques avec des élèves. L'article souligne la pertinence durable des principes mécaniques et énergétiques anciens, tout en encourageant une compréhension de l'innovation à travers les âges. Cette approche offre une perspective sur l'ingénierie antique et son lien avec la programmation contemporaine.

Abstract

The earliest automatons were alluded to by Homer in the Iliad using the term αὐτόματος, denoting self-moving machines. This article reexamines the legacy of ancient automatons through the innovations of Heron of Alexandria. Automatons, once employed in temples and theaters, served as a wellspring of inventive mechanisms, including automatic doors. Heron further devised autonomous tripods, prefiguring modern autonomous vehicles. The programming of these tripods, predicated upon axles and pegs, was empirically demonstrated through practical workshops involving students. The article underscores the enduring relevance of ancient mechanical and energetic principles while promoting a comprehension of innovation across epochs. This approach proffers a perspective on antiquated engineering and its nexus with contemporary programming.

...article téléchargeable bientôt en ligne...

Citer : Corot, E. (2025) Activité - Programmation d’automobile autonome a la manière de Héron d’Alexandrie, Radix, 2.
à venir...