Guide Pedago Python v2
Guide Pedago Python v2
Guide Pedago Python v2
1 / 15
Le programme Citizen Code 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.
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).
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.
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.
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
5 / 15
Organisation et progression pédagogique
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.
séquence et répétition
x x
d’instructions
boucles de répétition
bornées (for) x x
conditions et boucles
conditionnelles x x
marqueurs et variables x
fonctions définies x
booléens x
6 / 15
Progression pédagogique et notions abordées par épisode
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).
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 :
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
8 / 15
Episode 7 : Imbrications
Saison 2 :
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.
9 / 15
Fonctionnalités de Citizen Code Python :
Interface Enseignant et Élève
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 .
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
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.
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
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