Plan du cours

Ce cours est prévu sur 18 à 25 demi-journées, avec des modules de 45 à 135 minutes (soit une à trois heures de cours). Chaque module comprend plusieurs activités parmi :

  • des exercices et leurs corrigés,
  • des cours en "live" ou en vidéo sur les nouveaux concepts,
  • des quiz à faire en individuel ou en groupe,
  • des revues par groupes ou en classe entière,
  • des travaux de développement (micro-projest) guidés ou autonomes,
  • la réalisation de projet en groupe,
  • des travaux de recherche exploratoire.

Le cours peut être accompagné (ou pas) d'un portfolio numérique. C'est un site Web qui permet aux participants de partager leurs travaux et de les remettre aux enseignants. C'est aussi l'occasion d'apprendre à gérer un site Web, valoriser et communiquer le résultat de son travail.

Le plan (ci-dessous) est basé sur une logique de micro-projets. Chaque notion est abordée au travers d'une application, et on précise la notion après l'avoir utilisée. Pour faciliter cette démarche, les notions principales sont examinées de façon plus formelle dans le chapitre " notions générales " avec :

le matériel et le logiciel, l'abstraction et les architectures,
Internet, URL et API adresses et Interfaces),
le binaire, les images,
le computational thinking (pensée informatique).

Vous pouvez revenir à ce chapitre et la définition de ces notions à chaque réutilisation, si les participants ont oublié.

Plan du cours

  1. Présentation générale du cours
  2. Algorithmes et programmes :
    • exercices avec Blockly Maze,
    • qu'est-ce qu'un algorithme ?
  3. Introduction à Scratch
    • premier projet : Ghostbuster
    • Créer un compte Scratch, partager un projet
  4. Développement itératif d'un jeu : circuit de voiture
    (sur plusieurs séances)
    • V1 : version de base (conditions, itérations)
    • V2 : modifier la vitesse (variables)
    • Qu'est-ce qu'une variable ?

    • V3a : corriger les anomalies, ajouter le son et un chronométre
    • V3b : compter les vies

    • V4 : contrôler la vitesse avec la souris
    • Qu'est-ce qu'une procédure ?
    • V5 : améliorer avec les procédures
    • Qu'est-ce que l'abstraction ?

    • (options)
    • V6 :Compter les tours et empêcher la triche
    • V6.1 : résoudre le décompte multiple
    • V6.2 : empêcher la triche

  5. Portfolio numérique (option)
    • Mise en place d'un portfolio numérique (site Web).

  6. Le jeu Pong (sur plusieurs séances)
    • Réalisation du jeu Pong version 1
    • Pong version 2, amélioration du jeu
    • Défis Pong : création d'un extension personnelle, partage du résultat.

  7. Le jeu de Nim (option)
    • Analyser le jeu et trouver la règle qui permet de gagner
    • Ecrire l'algorithme en pseudoCode ou diagramme de flux (logigramme)
    • Les listes ou variables de type liste
    • Objets et instances d'objets (clones dans Scratch)
    • Coder cet algorithme à partir d'un canevas.

  8. Projet personnel ou en groupe (sur plusieurs séances)
    • Création d'une application sur Scratch : choisir un thème / un canevas
    • Projet (suite et fin, présentation dans portfolio), bases de numération,Internet
-->

1
19/11/2020 voir cours : algos et Programmes

Objectifs :
  • découverte de la logique algorithmique: séquences, conditions, itérations
  • découverte des langages de programmation graphique par blocs,
Déroulement : A remettre :

2
26/11/2020 voir cours : Scratch Introduction

Objectifs :
  • retour sur la notion d'algorithme (quiz),
  • découverte de Scratch,
  • introduction à la programmation
  • notions nouvelles : programmation évènementielle, variables, capteurs
Déroulement : A remettre :

3
27/11/2020 voir cours : variables

Objectifs :
  • modifier le code pour avancer sans la barre d'espace,
  • quiz de revue,
  • utiliser une variable pour modifier la vitesse,
  • partager un projet Scratch,
  • analyser un problème (bug) et le corriger (debug)
  • quiz sur les variables (début de séance suivante)
Déroulement : A remettre :
  • quiz sur le code de la voiture,
  • lien vers projet Scratch partagé,

4
2/12/2020 voir cours :
Debug, puis gestion du nombre de vies

Objectifs :
  • quiz sur les variables, revue des réponses
  • voir comment analyser un problème (bug) et le corriger (debug),
  • conception et ajout (en autonome) d'une extension (nombre de vies),
  • utilisation d'un capteur (distance) pour contrôler la vitesse,
  • notion de matériel et de logiciel : qu'est-ce qu'un ordinateur ?
Déroulement :
  • quiz sur les variables, puis revue des réponses en classe entière
  • corriger 2 bugs de la version précédente
  • en option pour ceux qui ont terminé avant la correction :

  • notions de matériel et logiciel
  • Quiz sur le matériel et logiciel matériel et le logiciel

  • présentation du niveau 3 réalisé en mode "défi" :
    compter les vies en partant de 3, retirer une vie à chaque sortie de route.
  • réalisation en autonome de cette extension (en coaching par groupe)
  • présentation d'une solution
A remettre :

5
4/12/2020 voir cours :
Ergonomie contrôle de la vitesse avec la souris
Procédures et abstraction

Objectifs :
  • notion de matériel et de logiciel : qu'est-ce qu'un ordinateur ?
  • utilisation d'un capteur (distance) pour contrôler la vitesse,

  • restructurer et simplifier le code avec les procédures
  • comprendre l'importance de l'abstraction procédurale dans les architectures logicielles (couches ou abstraction layers)
Déroulement :
  • Donnez nous votre avis (anonyme)sur le début du cours

  • Notions de matériel et logiciel (video)
  • Quiz sur le matériel et logiciel matériel et le logiciel
  • Retour oral sur les notions clefs à partir des planches : Von Neumann (planche 9), IOT (17), architectures (27), langages de haut et bas niveaux (31), un langage est une couche d'abstraction (35)

  • Présentation du défi à réaliser en sous groupes :
    utilisation d'un capteur (distance) pour contrôler la vitesse.

  • Introduction video à la notion de procédure
  • réorganiser et simplifier le code avec les procédures (mode coaching)

  • qu'est-ce que l'abstraction de données et procédurale. (classe entière)
  • quiz sur l'abstraction (au début de la séance suivante)
A remettre :
  • réponse au Quiz sur le matériel et le logiciel
  • lien vers le projet Scratch avec contrôle de la vitesse par la distance au pointeur

6
10/12/2020 voir cours : le jeu Pong

Objectifs :

  • Revoir les variables et le traçage de code avec un quiz,
  • Réaliser une application de niveau intermédiaire (Pong) en commençant par son analyse :
    • sprites variabes, évènements et actions,
  • Approfondir les notions d’algorithme, de programmation évènementielle, de variable et de capteurs.
Déroulement :

7
11/12/2020 voir cours :
Finalisation de Pong et abstraction procédurale
et le binaire et les bases de numération.

Objectifs :

  • Revue de la notion de procédure (quiz),
  • Le binaire et les bases de numération,
  • (Présentation des canevas de projets à réaliser dans les deux dernières séances),
  • (Les messages comme moyen de synchronisation entre objets ou sprites,)
  • Finaliser le développement, mettre au point l'application,
Déroulement :
  • Quiz : sur les procédures (et traçage)
  • Le binaire et les bases de numération
    • vidéo de présentation
    • exercices de conversion, addition en binaire
  • Proposition de canevas pour les projets intermédiaires ou défis,
  • Finaliser Pong et restructurer le code avec les procédures,
  • (présentation des messages comme moyen de synchronisation)

10
19/01/2021 révisions et finalisation des projets
(session de reprise après la pause des vacances de Noël)

Objectifs :
  • Revoir des notions abordées dans la 1°partie du cours,
  • Voir les messages comme méthode de synchronisation (évènements internes),
  • Finaliser les projets et la fiche de présentation.
Déroulement :
  • Quiz de revue des notions abordées dans la 1° partie,
  • Point sur les messages comme évènements internes et méthodes de synchronisation,
    différences et avantages par rapport aux procédures,
  • finalisation des projets et rédaction de la fiche de présentation.

11
20/01/2021 ouverture vers la suite et finalisation des projets

Objectifs :
  • Présenter la suite du programme,
  • Introduction à Internet
  • présentation d'App Inventor
  • présentation de l'application fooding
  • réalisation de l'appplication sms game
  • Présentation de la suite du programme Scratch
Déroulement :
  • Introduction à Internet et au Web
  • Quiz, discussion
  • Présentation App Inventor : affichage de données Web
  • Présentation du programme de la 2° partie du cours exemples
  • Envoi du questionnaire sur les préférences
  • Réalisation SMS game (ou talk to me)

12 (ou 13)
27/01/2021 Intégration du projet et de la fiche et du projet dans une page Web
(Cette session se fait par demi groupe sous la direction de JC Edel)

Objectifs :
  • Intégrer le projet réalisé dans un site Web (Wordpress),
  • Apprendre à valoriser un travail auprès de lecteurs externes,
Déroulement :

13 (ou 12)
28/01/2021 : Introduction à App Inventor
(Cette session se fait par demi groupe)

Objectifs :
  • Présenter App Inventor avec SmsGame
  • vérifier le bon fonctionnement (avec une application de la galerie)
  • réaliser en ligne une 1° application et (open food facts)
  • Prendre en main l'outil App Inventor
  • Développer une première application (reconnaissance vocale et traduction)

Déroulement :
  • Présentation d'App Inventor avec SMSGame (live coding)
  • Chargement et lancement d'une application (tutoriel de la galerie App Inventor)
    (AI companion déjà installé sur les smartphones mis à disposition. Action à prévoir pour les autres),
  • Réaliser en ligne une 1° application (open food facts),
  • Prendre en main l'outil App Inventor, revue des composants,
  • Développer de l'application de reconnaissance vocale et traduction.

14
29/01/2021

Objectifs :
  • Revue du fonctionnement d'App Inventor (Quiz)
Déroulement :
  • Quiz sur App Invenntor
  • Présentation des deux modes de lancement des applications (mode debug et permanent)

15 (3/02/2021)
voir cours : 1° application : traduction automatique

Objectifs :
  • développer la 1° application,
  • découvrir des composants
  • faire un debrief du projet Scratch et de ce qui a été fait .
Déroulement :
  • Revue des composants
  • appli traduction : ajout du choix de la langue
  • enchainement des actions (à aprtir du prmeier booton)
  • Quiz sur app Invenntor

16 (4/02/2021)
voir cours : une petite idée V1

Objectifs :
  • réalisation de l'application "une petite idée" V1 puis V2,
  • finalisation des fiches projets
Déroulement :
  • Réalisation appli "Une petite idée V1"
  • Retour/Quiz (sur les composants)
  • (Réalisation V2 : Améliorations)
  • (Retour/quiz sur V2)
  • Portfolio

17 (9/02/2021)
voir cours : une petite idée V1

Objectifs :
  • réalisation de l'application "une petite idée" V1 puis V2,
  • 1° introduction aux variables de type liste (liste de titres d'images et de musiques),
Déroulement :
  • Réalisation appli "Une petite idée V2"
  • Correction en classe entière
  • Présentation de l'utilisation de listes et d'un spinner
  • Finalisation des fiches projets

18 (10/02/2021)
open food facts et internet

Objectifs :
  • retour sur l'appli "une petite idée", listes et extensions possibles
  • introduction à Internet, services, URLs, API, exemples (dont open food facts)
  • exercices sur les URL dans un navigateur (dont open food facts) : dictinction entre pages web et données (JSON,...)
  • réalisation semi-autonome de l'application open food facts à partir de spécifications, d'une analyse (flowchart/diagramme de flux) et d'une revue des points clefs (composants et blocs nouveaux à utiliser),
Déroulement :
  • retour sur "une petite idée V2", revue des composants utilisés, pseudo-code ou diagramme de flux, variables de type liste,
  • Internet : Vidéo, Quiz et échange classe entière
  • Exercices sur les URL ( open food facts Web et JSON, Google maps, Open data)
  • Lecture des spécifications de l'application (open food facts) à réaliser
    analyse (flowchart/diagramme de flux) et pseudo-code
    revue des composants et blocs nécessaires à sa réalisation,
  • réalisation en autonome à partir d'un canevas initial,
  • correction en classe entière.

19 (11/02/2021)
Open food facts, listes

Objectifs :
  • Les listes : composants (spinner, list picker, ...) et manipulation avec des blocs dédiés,
  • quiz et/ou exercices pratiques
  • exercices sur les URL et API,
Déroulement :
  • Quiz sur Internet (si on ne l'a pas fait dans la session précédente)
  • Point sur l'envoi des fiches projet Scratch
  • open food facts V2 : spécifications
    • gérer des listes de produits : sélectionner/ajouter/supprimer
    • enregistrer ces listes et les récupérer au démarrage de l'appli
  • présentation des variables de type liste
  • Coding live de la V2.1 d'open food facts avec une liste de produits
  • présentation de la notion de données permanentes, locales ou en réseau et des composants associés (tinyDB)
  • Coding live de la V2.2 d'open food facts avec lecture et enregistrement de la liste des produits scannés
  • Selon temps disponible: documentation projet SCratch dans portfolio
  • présentation du projet
actions connexes :
  • Installer AI starter sur tous les postes personnels à aprtir dune clef USB (et vérifier le fonctionnement sur les autres).

20 (12/02/2020)
listes de produits, données permanentes (tinyDB)

Objectifs :
  • revue de la notion de liste,
  • utilisation des listes dans open food facts
  • présentation des projets
  • présentation des données permanentes et de tinyDB
  • modification d'une application pour enregistrer et relire des données
  • Portfolio : présenter un projet Scratch.
Déroulement :
  • Retour sur la notion de liste avec Quiz/exercices
  • Modification en classe entière de l'application open food facts pour gérer des listes de produits
    • création d'une liste, ajout des codes barre à cette liste,
    • ajout d'un sélectionneur de liste pour choisir le produit affiché
    • ajout d'un sélectionneur de liste pour supprimer un des produits de la liste
  • Présentation des projets finaux
  • données permanentes : vidéo sur tinyDB
  • quiz : ./unit3/3_09.php
  • modification de l'application open food facts pour
    • enregistrer la liste des codes barre après chaque changement
    • lire la liste des codes abarre au démarrage de l'application

23-24 (29/01/2020)
Application de dessin et photo avec Paint

Objectifs :
  • design et conception de l'application, réalisation par étapes
    (points, lignes, couleurs, boutons, photos)
  • finalisation des groupes et choix des sujets
  • mini quiz et quizly (§3.4)
Déroulement :
  • Voir vidéos dans : playlist Paint et reportage
  • design et conception de l'application,
  • V1 : dessin des points
  • V2 : lignes et couleurs
  • constitution des groupes projest et choix des sujets
  • mini quiz
  • intégration des photos
  • quizly (§3.4)