Guide Pedago Python v2

Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1sur 15

Guide pédagogique

1 / 15
Le programme Citizen Code Python

Présentation générale du programme CTZC Python

Issu d’un partenariat entre TRALALERE et France iOi, et avec le soutien du programme
Amazon Future Engineer, Citizen Code Python donne l’opportunité à vos élèves, âgés de 11
à 18 ans, de découvrir et acquérir les bases de la programmation informatique au travers
d’un univers gamifié (ludique), stimulant et évolutif issu du jeu vidéo.

Grâce à son mode enseignant, Citizen Code Python propose une initiation à la
programmation informatique en Python, mais également en Blockly, un langage de
programmation par blocs, utilisable dans un contexte scolaire. Celui-ci vous permet de
créer votre classe, d’y associer vos élèves et d’assigner des activités spécifiques à vos
élèves tout en suivant leur progression. Les activités sont réparties en trois niveaux :
découverte, validation et challenge.

De leur côté, vos élèves interagissent avec un univers gamifié ; leurs productions sont
valorisées grâce au système de gratification permettant de personnaliser leur avatar,
et leurs compétences en programmation sont reconnues via l’obtention d’open-badges
certifiés par Amazon Future Engineer et TRALALERE.

Présentation de l’interface d’une activité

L’interface représente une grue, dont les déplacements peuvent être contrôlés à l’aide
de blocs ou d’instructions spécifiques. L’interface est présentée ci-dessous. L’écran
est divisé en deux environnements principaux. Sur la moitié gauche de l’écran, un
environnement visuel permet de visualiser les déplacements et actions d’une grue armée
d’un grappin en adéquation avec la consigne de l’activité. Sur la moitié droite, une interface
de programmation permet de faire glisser les blocs en Blockly) ou de taper les lignes
d’instructions (en Python).

Un système d’indices progressifs, de documentation et de glossaire est mis à disposi-


tion des élèves pour les aider tout au long de leur progression à valider les activités propo-
sées par Citizen Code Python.

Interface Citizen Code Python - exemple : “La cascade” (Saison 1 - Episode 1)

2 / 15
Objectifs généraux et spécifiques de Citizen Code Python

Objectifs généraux :
„ permettre aux jeunes de devenir acteurs et non plus uniquement consommateurs du
numérique ;
„ lutter contre la fracture numérique et les inégalités en lien avec le numérique ;
„ favoriser l’attractivité (et l’accessibilité) des métiers du numérique et des compétences
associées au numérique.

Objectifs spécifiques :
„ rendre accessible la programmation informatique en Python et en Blockly au travers
d’une approche ludique ;
„ mettre à profit (et renforcer) les compétences en logique computationnelle,
transférables aux raisonnements mathématiques et autres apprentissages scolaires,
via l’introduction aux algorithmes de programmation informatique ;
„ permettre aux jeunes d’intégrer les bases de la programmation informatique de
manière autonome, grâce à un système de feedback visuel en temps réel ;
„ être capable d’ordonner et de planifier une séquence d’instructions, de complexité
croissante ;
„ maîtriser les séquences d’instructions, les boucles de répétition “for” et imbriquées, les
variables, les fonctions et algorithmes, et les conditions.

Compétences CRCN et certification PIX

Les activités proposées par Citizen Code Python s’inscrivent pleinement dans
les enseignements transversaux de mathématiques, de sciences numériques et de
technologie, ainsi que dans le cadre de référence des compétences numériques. Elles
sont en adéquation avec les attendus de la certification PIX. Retrouvez ci-après les liens
entre les activités proposées par Citizen Code Python et les attendus des programmes
scolaires.

Cycle 4 :
Technologie
„ Écrire, mettre au point et exécuter un programme :
ƒ analyser le comportement attendu d’un système réel et décomposer le problème
posé en sous-problèmes afin de structurer un programme de commande ;
ƒ écrire, mettre au point (tester, corriger) et exécuter un programme commandant un
système réel et vérifier le comportement attendu ;
ƒ écrire un programme dans lequel des actions sont déclenchées par des événements
extérieurs ;
‚ notions d’algorithme et de programme,
‚ notion de variable informatique,
‚ déclenchement d’une action par un événement, séquences d’instructions,
boucles, instructions conditionnelles,
‚ systèmes embarqués,
‚ forme et transmission du signal,
‚ capteur, actionneur, interface.

3 / 15
Mathématiques
„ Algorithmique et programmation :
ƒ connaissances à acquérir ;
‚ notions d’algorithme et de programme,
‚ notion de variable informatique,
‚ déclenchement d’une action par un événement,
‚ séquences d’instructions, boucles, instructions conditionnelles ;
ƒ compétences associées ;
‚ écrire, mettre au point (tester, corriger) et exécuter un programme en réponse à
un problème donné.

Cycle Lycée :
Mathématiques
„ Algorithmique et programmation :
ƒ utiliser les variables et les instructions élémentaires ;
‚ choisir ou déterminer le type d’une variable (booléen, entier, flottant ou chaîne de
caractères),
‚ concevoir et écrire une instruction d’affectation, une séquence d’instructions, une
instruction conditionnelle,
‚ écrire une formule permettant un calcul combinant des variables,
‚ programmer, dans des cas simples, une boucle bornée, une boucle non bornée,
‚ dans des cas plus complexes : lire, comprendre, modifier ou compléter un
algorithme ou un programme ;
ƒ notion de fonction :
‚ écrire des fonctions simples ; lire, comprendre, modifier, compléter des fonctions
plus complexes,
‚ appeler une fonction.

Sciences numériques et technologie

„ Notions transversales de programmation :


ƒ écrire et développer des programmes pour répondre à des problèmes (et modéliser
des phénomènes physiques, économiques et sociaux).

Modalités d’usage

Cible
Âge : 11 à 18 ans
Niveau : Cycle 4 / Lycée général et professionnel / Adulte
Remarque : Citizen Code Python s’adresse principalement à un public de niveau collège
et/ou lycée. À ce titre, les objectifs pédagogiques ont été définis en adéquation avec le
public ciblé. Toutefois, nous vous laissons la liberté d’utiliser la ressource auprès d’un
autre public, si vous le jugez pertinent dans et pour votre pratique. Les activités proposées
en Blockly peuvent également être accessibles à un public plus jeune pour les initier à la
programmation (et syntaxe) informatique.

4 / 15
Modalités pédagogiques et matériel nécessaire

Citizen Code Python convient particulièrement à un usage en contexte scolaire et


permet aux jeunes d’être engagés et acteurs dans l’acquisition des compétences définies
dans les enseignements de programmation. Grâce au mode enseignant et à son système
d’assignation, vous pouvez sélectionner les activités en adéquation avec les notions de
programmation spécifiques que vous souhaitez aborder dans votre pratique, proposer des
activités différenciées/individualisées par groupe et/ou par élève, afin de vous adapter
le plus possible à leurs besoins. Une utilisation en groupe est également pertinente pour
inciter les élèves à verbaliser leur raisonnement et à ajuster leurs stratégies dans un
contexte de collaboration active, contexte particulièrement efficace et privilégié dans le
milieu de la programmation informatique.

L’utilisation de la plateforme Citizen Code Python est intuitive et ne nécessite pas de


connaissances préalables en programmation informatique de la part de l’enseignant. Ainsi,
la ressource peut également être utilisée clé en main, en autonomie par vos élèves et/ou
servir de support à vos enseignements. La ressource est également adaptée à des usages
para-, péri- et extrascolaires.

5 / 15
Organisation et progression pédagogique

Progression pédagogique et notions abordées par saison

Citizen Code Python comprend deux saisons ; la première introduit les principales
notions indispensables pour développer les compétences de base en programmation ; la
seconde propose un approfondissement des notions abordées dans la première saison,
afin de les maîtriser et de faire reposer l’apprentissage de notions plus avancées sur des
bases solides en programmation.

Notions abordées Saison 1 Saison 2

séquence et répétition
x x
d’instructions

boucles de répétition
bornées (for) x x

boucles de répétition non


x
bornées (while)

conditions et boucles
conditionnelles x x

marqueurs et variables x

fonctions définies x

booléens x

Tableau : Répartition des notions de programmation abordées au sein de chaque saison.

6 / 15
Progression pédagogique et notions abordées par épisode

Citizen Code Python comprend 66 activités pédagogiques réparties en onze épisodes,


se présentant sous la forme de problèmes à résoudre. Chaque épisode introduit
une nouvelle notion, en suivant une progression pédagogique adaptée au rythme
d’apprentissage de vos élèves. Chaque épisode comprend une découverte guidée des
nouvelles notions introduites, suivie d’activités de validation, visant à ce que les jeunes
puissent manipuler librement et être acteurs de leurs apprentissages. Ces activités de
validation sont suivies de challenges1 stimulants, transposant la mécanique des casse-
têtes au domaine de la programmation informatique.

Conditions d’obtention des open-badges

Les compétences en programmation développées par les élèves sont valorisées par la
délivrance d’open-badges certifiés par Amazon Future Engineer et TRALALERE. A ce jour,
il existe 4 open badges, dont deux spécifiques à Python. L’obtention d’un open-badge est
conditionnée par la validation de l’ensemble des activités de validation :
„ au sein d’une même saison ;
„ pour un langage spécifique (Blockly ou Python).

Langage / Saison Saison 1 Saison 2


Blockly Apprenti codeur - Blockly Codeur junior - Blockly
Python Apprenti codeur - Python Codeur junior - Python

Présentation détaillée des notions abordées par épisode

Dans cette partie sont abordées les notions spécifiques introduites et travaillées au
sein des différents épisodes, afin de vous guider dans la découverte de la ressource.
La présentation détaillée de chaque activité par épisode, associée à l’une des solutions
possibles est accessible en cliquant sur l’épisode souhaité.

Saison 1 :

„ Episode 1 : Séquences d’instructions

Le premier épisode aborde la manipulation de séquences d’instructions simples et


basiques, organisées de manière linéaire. Il correspond à un niveau débutant, permettant
à vos élèves de découvrir la plateforme et les instructions simples de déplacements et
d’interaction avec les objets. Cet épisode comprend 3 activités.

1 Du fait de leur niveau de difficulté plus important, ces activités challenge sont considérées comme
optionnelles dans l’acquisition des open-badges certifiés par Amazon Future Engineer et TRALALERE.

7 / 15
„ Episode 2 : Répéter une instruction

Le deuxième épisode introduit la notion de boucle de répétition d’une seule instruction,


correspondant à un déplacement linéaire de plusieurs colonnes. Il correspond à un niveau
de difficulté débutant et permet de travailler sur la syntaxe d’une instruction simple
(l’indentation), tout en enlevant l’ambiguïté associée au nombre de répétitions à définir à
l’aide d’exemples visuellement peu complexes. Il est composé de 3 activités.

„ Episode 3 : Répéter plusieurs instructions

Le troisième épisode vient compléter le précédent, en introduisant la notion de boucle


de répétition composée de plusieurs instructions successives. Les activités doivent ainsi
être résolues à l’aide d’une seule boucle de répétition. Il correspond à un niveau de difficulté
débutant et comprend 6 activités.

„ Episode 4 : Plusieurs boucles

Le quatrième épisode se focalise sur la programmation de plusieurs boucles de


répétitions indépendantes les unes des autres. Ainsi, les activités ne peuvent être résolues
qu’avec un minimum de deux boucles de répétition ; la première boucle se focalisant sur
le déplacement des blocs d’une même colonne; la seconde sur l’ordonnancement de ces
blocs, la destruction d’un bloc cassé ou la répétition des instructions sur le côté opposé de
la précédente boucle. Il correspond à un niveau de difficulté intermédiaire. Ce quatrième
épisode est composé de 5 activités.

„ Episode 5 : Boucles imbriquées

Le cinquième épisode introduit la notion de boucles imbriquées, correspondant à


l’enchevêtrement d’une boucle au sein d’une autre boucle : la boucle centrale (ou imbriquée)
correspond aux instructions d’ordonnancement (manipulation et tri des différents blocs
d’une même colonne) et la boucle de répétition permet de répéter les instructions de la
boucle “centrale” pour l’ensemble des colonnes constitutives de l’activité. Il correspond à un
niveau de difficulté intermédiaire et est constitué de 8 activités.

„ Episode 6 : Instructions conditionnelles

Le sixième épisode aborde la notion de conditions et de boucles conditionnelles,


permettant de programmer le comportement de la grue en fonction de la condition définie,
c’est-à-dire si cette dernière est remplie (if condition remplie :) ou, à défaut, si elle ne
l’est pas (else : ) (lorsque la condition est remplie). Il correspond à un niveau de difficulté
avancée et comprend 3 activités.

8 / 15
„ Episode 7 : Imbrications

Le septième (et ultime) épisode de la première saison permet de faire la synthèse de


l’ensemble des notions abordées au sein des précédents épisodes, à savoir séquences
d’instructions, boucles de répétitions, boucles imbriquées et instructions conditionnelles,
afin de résoudre les activités. Cet épisode permet également de vérifier l’acquisition et
la consolidation des compétences de base en programmation informatique, ainsi que
la capacité de vos élèves à mettre en pratique leur connaissances et à les généraliser à
des activités mixtes plus complexes. Il correspond à un niveau de difficulté avancée. Il
comprend 10 activités.

Saison 2 :

„ Episode 1 : Les variables

La saison 2 débute avec un épisode abordant la notion de variables au travers des


marqueurs. Une fois définis, ces derniers permettent notamment de se déplacer plus
rapidement d’une position initiale à une colonne souhaitée. Il correspond à un niveau de
difficulté complexe et est composé de 10 activités.

„ Episode 2 : Les fonctions

Le deuxième épisode introduit la possibilité pour l’utilisateur de définir des fonctions


préalables, c’est-à-dire des séquences d’instructions, qu’il devra utiliser pour résoudre les
activités. Bien que complexes à maîtriser, les fonctions permettent à l’utilisateur de gagner
beaucoup de temps dans l’écriture de son programme, mais également d’avoir un code bien
plus synthétique. Il correspond à un niveau de difficulté complexe et comprend 6 activités.

„ Episode 3 : Les boucles non bornées “tant que” (while)

Le troisième épisode aborde la notion de boucle non bornée, pouvant se répéter “tant
que” la condition définie est (ou n’est pas) remplie. Cette notion est particulièrement
importante dans la programmation informatique et permet de produire un code synthétique
et optimisé. Il correspond à un niveau de difficulté avancée et est composé de 8 activités.

„ Episode 4 : Les booléens

Le quatrième épisode introduit la notion de booléen, c’est-à-dire une donnée ne pouvant


prendre que deux états distincts (ex : True / False ; 0/1), tout en proposant une synthèse
des épisodes précédents. La résolution des activités demandent ainsi de savoir définir les
boucles bornées, de maîtriser les variables, ainsi que la définition de fonctions. Cet épisode
correspond à un niveau de difficulté avancée et inclut 4 activités.

9 / 15
Fonctionnalités de Citizen Code Python :
Interface Enseignant et Élève

La plateforme Citizen Code Python propose un mode enseignant comprenant deux


interfaces spécifiques : une interface “Enseignant” et une interface “Élève” rattachée à
la précédente via une classe. Nous allons détailler chacune de ces interfaces et leurs
fonctionnalités, afin que vous puissiez être à l’aise dans l’utilisation de la plateforme
Citizen Code Python..

Présentation de l’interface Enseignant et de ses fonctionnalités

Création d’un profil enseignant

Pour créer un compte enseignant, il vous suffit de renseigner le formulaire d’inscription


(nom d’utilisateur, mot de passe) en y indiquant votre adresse mail professionnelle, ainsi
que votre statut d’enseignant. Une fois votre compte créé, pensez à consulter votre boîte
mail afin de confirmer l’activation de votre compte enseignant. Lors de votre première
connexion (et pour les suivantes), il vous suffit de vous identifier en cliquant sur “Se
connecter” et en renseignant vos identifiant et mot de passe.

Présentation de l’interface Citizen Code Python

L’interface Enseignant est divisée en trois pages :


„ une page “Saisons”, à partir de laquelle vous pourrez visualiser, tester et assigner les
activités réparties en saisons et épisodes ;
„ une page “Gestion de classe”, vous permettant de créer vos classes, ainsi qu’un profil
pour chacun de vos élèves et de l’associer à la classe correspondante ;
„ une page “Suivi”, faisant le récapitulatif des activités assignées ainsi que la progression
individuelle de vos élèves pour chacune de ces activités.

Une fois connecté à la plateforme, vous arrivez directement sur la fenêtre “Gestion de
classe”. Dans ce guide pédagogique, nous nous focaliserons sur le mode enseignant.
Si vous avez besoin d’informations complémentaires sur l’utilisation générale de la
plateforme, n’hésitez pas à cliquer sur la page “Comment ça marche ?”.

10 / 15
Création d’une classe :

1
3 5
4

Pour créer une classe, il vous suffit de cliquer sur le sous-onglet “Classes” 1 pour
vous renvoyer vers l’écran central. Cliquez sur “Ajouter une classe” 2 . Un encart apparaît
: vous pouvez renseigner le nom de la classe 3 que vous souhaitez créer et lui associer
une couleur 4 de votre choix pour augmenter sa saillance visuelle. Appuyez sur le bouton
pour valider la création de votre classe 5 . Un code classe est alors généré pour permettre
à vos élèves de la rejoindre 6 .

Création du profil de vos élèves :


Il existe deux méthodes principales pour créer un compte pour chacun de vos élèves.

„ Méthode 1 (recommandée) :

3 4 5 6

Vous pouvez créer un compte pour l’ensemble de vos élèves. Pour ce faire, cliquer sur
l’onglet “Elèves” 1 . Cliquez sur le bouton “Ajouter un élève” 2 . Une pop-up apparaît vous
demandant de renseigner le pseudo 3 de l’élève (par exemple, son prénom), un mot de
passe provisoire 4 et la classe associée 5 . Une fois ces champs renseignés, il vous
suffit d’appuyer sur le bouton 6 . Le système génère automatiquement un identifiant
pour chaque élève. Votre élève pourra alors s’identifier à l’aide de l’identifiant et du mot de
passe provisoire2 depuis le portail de connexion : https://app.futureengineer.fr

2 Ce mode d’identification ne nécessite pas pour l’enfant de renseigner une adresse mail.

11 / 15
„ Méthode 2 :
2
1

Si vous souhaitez que vos élèves effectuent leur inscription individuellement, ils peuvent
compléter le formulaire d’inscription présenté précédemment (voir page 9), en spécifiant
leur statut d’élève3. Il est également possible pour vos élèves d’utiliser un compte
personnel et de le rattacher à la classe créée. Pour rattacher un compte d’utilisateur
personnel, vos élèves doivent renseigner le code classe depuis leur compte dans l’encart
“Entrer un code classe”.
Chemin : Mon profil 1 > Mon compte 2 > Entrer un code classe 3

Conseils : Lors de la création du profil des élèves, nous vous conseillons de


ƒ choisir un identifiant facile à communiquer (exemple : leur prénom et la première
lettre de leur nom de famille) ;
ƒ limiter l’utilisation des accents et les espaces pour éviter les erreurs de connexion ;
ƒ définir un mot de passe commun pour l’ensemble de la classe, sachant que vos
élèves devront en saisir un nouveau lors de leur première connexion ;
ƒ transmettre l’identifiant (plutôt que le pseudonyme) lors de la première connexion.

Assigner des activités et suivre la progression de vos élèves :


Le mode enseignant vous permet non seulement d’assigner des activités spécifiques à
vos élèves mais également de suivre l’état d’avancement de ces assignations, ainsi que les
performances réalisées.

Assignations :
En amont de l’animation d’une séance sur Citizen Code Python, il vous est possible
d’assigner des activités spécifiques (ou l’ensemble des activités) d’un et/ou de plusieurs
épisodes des deux premières saisons. Pour ce faire, cliquez sur la page “Saisons” afin
d’être redirigé vers les activités regroupées par saisons et épisodes. Cliquez sur le bouton
“Assigner”.

3 Remarque : la seconde méthode requiert l’ajout d’une adresse mail personnelle de la part des élèves.

12 / 15
1

Une pop-up apparaît (voir ci-avant) afin de vous permettre de paramétrer l’assignation :
„ pour une classe spécifique 1 : en renseignant manuellement le nom de la classe ou en
la sélectionnant dans la liste déroulante ;
„ pour (certains de) vos élèves 2 : en sélectionnant les élèves souhaités dans la liste
déroulante ;
„ en définissant une date d’accès aux activités assignées 3 : les activités ne seront
alors affichées pour vos élèves qu’à compter de cette date et jusqu’à leur validation ;
„ pour le langage de programmation souhaité 4 : Il vous est possible d’assigner
certaines activités dans un langage de programmation souhaité (ex : Python) et
d’autres dans un second langage (ex : Blockly). - attention, il vous faudra alors réaliser
deux assignations distinctes ;
„ en choisissant une ou des activités spécifiques 5 : il vous suffit de cocher/décocher
le nom des activités que vous souhaitez assigner à vos élèves.

Une fois le paramétrage effectué, il vous suffit de cliquer sur “Valider” pour confirmer
l’assignation des activités sélectionnées 6 .

Conseils : Les compétences en programmation acquises par vos élèves peuvent être
valorisées via l’obtention d’un open-badge certifié par Amazon Future Engineer et
TRALALERE. En assignant l’ensemble des activités de validation d’une même saison,
vous aiderez ainsi vos élèves à obtenir l’open-badge associé.

13 / 15
Suivi des assignations : progression et résultats

L’onglet “Suivi” vous permet de suivre les assignations d’activités à l’échelle de la classe
et de l’élève sous la forme d’un tableau.

Lorsqu’une activité a été validée, vous pouvez cliquer sur l’onglet “Suivi des résultats”
pour accéder aux performances de l’élève, et plus particulièrement au nombre d’erreurs
commises et au contexte de réalisation de l’activité (suite à une assignation ou à une
réalisation spontanée).

Ce suivi des assignations vous permet également d’identifier les difficultés rencontrées
par vos élèves et d’ainsi pouvoir expliciter les points d’éclaircissement à apporter.

Présentation de l’interface Élève et des assignations d’activités

Connexion à l’interface Élève de Citizen Code Python

Pour se connecter, vos élèves doivent renseigner l’identifiant et le mot de passe définis
lors de la création de leur profil. Une fois connectés, ils arrivent directement sur la page
“Profil” leur permettant de vérifier si leur compte est associé à la classe prédéfinie par
l’enseignant ou, à défaut, de renseigner le code classe pour la rejoindre.

14 / 15
Présentation de l’interface Élève de Citizen Code Python

L’interface Élève est divisée en trois pages :


„ une page “Saisons”, à partir de laquelle vos élèves peuvent visualiser et accéder aux
activités réparties en saisons et épisodes ;
„ une page “Mon avatar”, leur permettant de customiser leur avatar en dépensant les
Citizen Coin obtenus pour chaque activité validée ;
„ une page “Mes activités”, au sein de laquelle vos élèves retrouvent les activités
assignées individuellement ou par épisode entier.

Activités assignées et validation des activités

Sur la page “Mes activités”, vos élèves retrouvent l’ensemble des activités assignées.
Lorsque vous avez assigné toutes les activités d’un même épisode, celles-ci sont présentées
en ligne et organisées dans l’ordre de progression prédéfini dans l’onglet “Activité assignée”.

Si seules certaines activités d’un épisode ont été assignées, alors ces dernières sont
mises en avant à l’aide d’un cadre. Vos élèves sont toutefois libres de réaliser les activités
dans l’ordre souhaité.

Une fois validée, une activité passe de l’onglet “Activité assignée” à “Activité réalisée”.
Notez que, depuis le mode enseignant, vous aurez accès à la progression de vos élèves
(modification du statut, nombre d’erreurs renseignées).

15 / 15

Vous aimerez peut-être aussi

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy