Programmer en Python, c'est Capytale ! publié le 03/06/2022  - mis à jour le 07/06/2022

Présentation de la plateforme Capytale

Présentation de la plateforme

Le projet Capytale, proposé par l’académie de Paris, est un service numérique pédagogique permettant la création et le partage d’activités de codage entre enseignants et élèves.

Ce service, désormais disponible sur l’ENT Lycée Connecté de la région, permet à tout enseignant de lycée de créer des activités de codage qu’il peut ensuite partager auprès de ses élèves.

La procédure de création et de partage d’une activité est la suivante :

  • L’enseignant se connecte sur l’ENT Lycée Connecté et clique sur l’icône Capytale :
    Icône Capytale dans l'ENT

    Icône Capytale dans l’ENT

  • Dans l’onglet "Mes activités", il choisit le type d’activité qui l’intéresse :
    Choix d'une activité dans Capytale

    Choix d’une activité dans Capytale

  • Une fois l’activité créée, un code de partage lui est associé et l’enseignant peut le transmettre à ses élèves
  • Les élèves, connectés à Capytale via l’ENT, saisissent ce code :
    Zone de saisie du code de partage de l'activité

    Zone de saisie du code de partage de l’activité

  • Ils obtiennent alors une copie personnelle de l’activité ;
  • Les copies ainsi créées apparaissent automatiquement dans l’interface de l’enseignant qui peut alors les consulter, les commenter et/ou les évaluer :
    Liste des travaux d'élèves

    Liste des travaux d’élèves

    Les activités proposées sont disponibles en ligne sur tout type de périphérique (ordinateur, tablette, smartphone), ne nécessitent aucune installation. Il suffit de disposer d’un navigateur web pour ouvrir une activité et le code s’exécute dans le navigateur. Les travaux des élèves sont ensuite enregistrés et stockés sur un serveur distant.

 Page suivante : "L’activité script-console et l’activité notebook"


L’activité script-console

Capytale permet de partager avec la classe des activités de codage dans un environnement script/console enrichi des fonctionnalités pédagogiques attendues par un enseignant.

Cet environnement correspond à l’interface habituelle d’un Environnement de Développement Intégré (IDE) proposée par les logiciels de type Thonny, EduPython, Spyder, Pyzo,...

L’enseignant dispose d’une zone où il peut écrire des consignes et de deux zones pour l’évaluation et l’appréciation du travail si celui-ci est évalué (cliquer sur l’image pour l’agrandir) :

Zone de consignes et d'évaluation d'une activité script/console

Zone de consignes et d’évaluation d’une activité script/console

Il peut fournir des codes à exécuter, interpréter, compléter ou corriger mais il peut aussi demander des constructions complètes de programmes ex nihilo. Les élèves réalisent les tâches demandées et peuvent ensuite tester le bon fonctionnement de leurs programmes dans la console en exécutant leurs fonctions avec les appels proposés par le professeur.

Dans l’exemple, ci-dessous (simulation de variable aléatoire en première STMG), les élèves avaient simplement à remplacer les mots-clés None par les noms de variables corrects.

Exemple de code à compléter dans une activité script/console

Exemple de code à compléter dans une activité script/console

Remarque : lors de l’utilisation de fonctions aléatoires du module random, il peut paraître difficile de comparer les résultats des élèves du fait de la variabilité du hasard d’une machine à l’autre. Une solution consiste à initialiser le générateur de nombres aléatoires avec la méthode random.seed(a) où a sera un nombre entier quelconque identique pour tous les élèves.

Par exemple, l’instruction :

Bloc de code informatique : voir l'article sur le site.
  
  1. import random
  2.  
  3. random.seed(10)
  4. print(random.random())

affichera sur toutes les machines la valeur suivante :

Bloc de code informatique : voir l'article sur le site.
  
  1. 0.5714025946899135

L’activité notebook

Pour des activités plus élaborées, on pourra utiliser le format notebook Jupyter. Il s’agit d’un document qui contient à la fois du code Python et des éléments de texte, tels que des figures, des liens, des formules mathématiques.

Exemple de notebook

Exemple de notebook

Les élèves peuvent alors suivre les consignes comme s’ils avaient un document papier. Ils peuvent saisir du code dans des cellules prévues à cet effet et exécutent ces cellules pour tester leur travail.

Exemple de consigne et de réponse d'élève

Exemple de consigne et de réponse d’élève

Le fichier notebook est construit en ligne par l’enseignant mais peut ensuite être exporté au format .ipynb. Si l’enseignant dispose d’un environnement Jupyter installé sur son ordinateur, il peut réaliser un export au format pdf (moyennant quelques retouches en latex). Vous pourrez consulter ci-dessous des exemples de notebook (élève et professeur) d’une activité Traam sur l’intelligence artificielle :

Version pdf du notebook élève (PDF de 918.4 ko)

Notebook Capytale converti au format pdf

Version pdf du notebook professeur (PDF de 1 Mo)

Intégralité des fonctions Python construites pour la programmation de l’IA


 Page suivante : "L’activité SQL et l’activité HTML+CSS+JS"


L’activité SQL

Pour des activités sur les bases de données et le langage SQL (SNT et NSI), le service Capytale propose une activité SQL qui fonctionne comme un notebook dans lequel les élèves peuvent effectuer des requêtes sur un fichier .sql joint au notebook à la création de celui-ci.
Ci-dessous, vous trouverez une copie d’écran d’un exemple d’activité SQL faite en SNT dans le thème "Les données structurées et leur traitement" (cliquer pour agrandir) :

Exemple d'activité SQL dans Capytale

Exemple d’activité SQL dans Capytale

Activité HTML+CSS+JS

Pour des activités d’apprentissage des langages du web, cette interface permet de développer et tester en direct du code en HTML, CSS et JavaScript. Chaque zone peut être masquée ou verrouillée en lecture seule selon le besoin pédagogique.

Dans le cadre d’un projet de réalisation d’une page Web en SNT (thème "Le Web"), les élèves avaient à construire une page web sur un thème de leur choix en respectant les contraintes d’un cahier des charges.

Cahier des charges pour le projet de page Web (PDF de 3.6 Mo)

Cahier des charges pour le projet de page Web

Pour démarrer leur projet, ils disposaient d’une activité Capytale, reprenant rapidement les consignes et proposant un fichier .html de base et un fichier .css de base qu’ils devaient enrichir et personnaliser.

Consignes pour le projet de page Web

Consignes pour le projet de page Web

Un exemple de rendu élève :

Exemple de travail d'élève pour le projet de page Web

Exemple de travail d’élève pour le projet de page Web


 Page suivante : "Évaluation et mutualisation"


Évaluation de productions

Dès que l’élève a créé sa version de l’activité, celle-ci est visible dans l’interface du professeur qui peut lui communiquer des commentaires pour l’accompagner dans son travail. Il peut aussi évaluer la production d’un élève à l’issue d’une période de préparation, en verrouillant l’accès aux travaux. Il dispose pour cela de trois états :

  • en cours : le travail est modifiable par l’élève et n’est pas encore corrigé
  • rendu : le travail n’est plus modifiable par l’élève et n’est pas encore corrigé
  • corrigé : le travail n’est plus modifiable par l’élève et est corrigé

Pour évaluer ses élèves, le professeur accède à la liste des travaux qui sont regroupés par activité :

Liste de travaux d'élèves évalués

Liste de travaux d’élèves évalués

Partage et mutualisation d’activités

À la création d’une activité, l’enseignant se voit proposer de partager son activité avec l’ensemble des utilisateurs de Capytale via la bibliothèque :

Sélection du partage d'une activité dans la bibliothèque

Sélection du partage d’une activité dans la bibliothèque

Lorsque le partage est activé, un utilisateur peut effectuer une recherche par mot-clé et récupérer une copie de l’activité partagée.

Exemple de recherche dans la bibliothèque

Exemple de recherche dans la bibliothèque