Marc BUFFAT

Professeur au département de Mécanique, Lyon 1 e-mail contact

Blog scientifique et pédagogique utilisant des notebooks IPython et Linux

Enseignement


Professeur au département de Mécanique de l’Université Claude Bernard Lyon I , j’enseigne la mécanique ainsi que la modélisation et la simulation numérique en mécanique à des étudiants de Licence et de Master. J’ai été longtemps responsable du Master M1 MEGA “Mécanique Énergétique” à l’université Lyon 1 et je suis actuellement directeur du département Mécanique de l’université Claude Bernard Lyon 1.

COURS

Livres interactifs (jupyter-book) sur mes cours

Vous trouverez sur ce lien (livres au format Jupyter-book) une liste de mes livres interactifs regroupant les documents et les notebooks Jupyter utilisés dans mes différents cours à l’université et construit en utilisant cet outil libre et formidable Jupyter book

Vous trouverez sur ce lien les cours et notes de cours correspondants à mes enseignements au département de mécanique de l’université Claude Bernard Lyon 1. i

Cours (format MOOC) INPROS:

Avec mes collègues, nous nous sommes lancé dans l’aventure des cours en ligne sur un projet de cours sur l’ INtroduction à la PROgrammation Scientifique INPROS, dont un premier prototype est accessible sur le site INPROS et dont les notebooks sont maintenant accessibles ici sur ce site:

Ce projet a pour objectif l’apprentissage par l’exemple d’une méthode de “programmation scientifique” pour passer d’un problème physique à sa simulation sur un ordinateur. On trouvera une première présentation lors du CANUM2014

Pratiques pédagogiques

La pédagogie et les pratiques d’enseignement ont toujours pris une part importante dans mon activité professionnelle. De plus les étudiants à l’université forment un public extrêmement varié, et beaucoup d’étudiants ont des lacunes dans leur formation, additionnées à un manque de méthodes de travail.

Développement d’un service numérique de cours basé sur Jupyter Nbgrader

Dans le cadre du projet INCLUDE, je suis responsable d’une action ayant pour objectif de déployer au niveau de l’université Lyon 1 et de l’INSA de Lyon, des services de cours basé sur Jupyter nbgrader.

Système de la gestion de cours avec Jupyter nbgrader

Utilisant Jupyter-book, ce document décrit l’installation et la configuration d’un système de gestion de cours utilisant Jupyter nbgrader et des outils de validation et de gestion de cours développés initialement pour gérér mes cours au département mécanique.

Pratique pédagogique innovante

Suite au confinement lié au COVID19, j’ai mis en place des enseignements en mode comodal, dont vous trouverez le détail ici. Cette pratique pédagogique innovante à fait l’objet de petits reportages sur les journaux de télévision de France 2, France 3 et BFM Lyon, qui sont venu me filmer pendant mes cours en mode comodal (un peu à l’improviste et en me prévenant 1h avant).

Outils pédagogiques

Mes pratiques pédagogiques se sont donc tournées vers le développement et la mise en place d’outils pour aider les étudiants à combler leurs lacunes et à acquérir des méthodes de travail, avec en particulier

  • WebWork: système de devoirs en ligne de mathématique auto-corrigés.

J’ai intégré le système webwork dans le portail pédagogique du département mécanique https://moodle;mecanique.univ-lyon1.fr, et je l’utilise pour mes cours de méthodes numériques (EF, ..) et de mécanique (mécanique des fluides,..).

  • valide_exo: système d’auto validation et auto correction d’exercices de programmation Python, et de compte-rendus de TP (avec détection de plagiat)

  • Ipython Notebook pour l’apprentissage de la modélisation et de la programmation scientifique.

La plateforme Jupyter est un excellent environnement d’apprentissage pour les étudiants. Les notebooks Jupyter peuvent être utilisés dans l’enseignant en tant que laboratoire numérique online pour la programmation et la modélisation numérique, pour la mise en place de travaux pratiques virtuels en sciences ou en sciences humaines, en classes inversées. Les notebooks Jupyter permettent l’utilisation de nombreuses ressources, comme l’audio, la vidéo, les images, les visualisations 2D ou 3D et la programmation moderne (Python, Julia, R, octave, scilab, ..). Et tout ceci ne nécéssite, coté étudiant, qu’un navigateur Web moderne pour utiliser ce logiciel gratuit.

Un serveur Jupyter, géré par le département mécanique, est accessible en ligne ici: https://jupyter.mecanique.univ-lyon1.fr/.

Pour l’utiliser pour des TP de programmation, de modélisation et pour aussi pour des TP virtuels en mécanique des solides et en mécanique des fluides, j’ai mis en place des serveurs Jupyter avec nbgrader, permettant en particulier la distribution automatique des TP aux étudiants, ainsi que le rendu du travail des étudiants et sa notation semi-automatique (en utilisant différents outils que j’ai développé).

Cette plateforme est maintenant déployée au niveau de l’université dans le cadre du projet ANR INCLUDE. Elle a aussi été présentée lors de la convention JupyterCon à Paris en mai 2023.

Introduction (basique) à Python et Jupyter

Il s’agit de la première leçon d’un ensemble de modules d’apprentissage pour les étudiants en sciences et technologie. Ces modules utilisent le langage Python, mais en présupposant aucune expérience de programmation préalable. Le premier objectif sera de vous apprendre à utiliser un environnement numérique Python avec des notebooks Jupyter permettant de résoudre des problèmes et ou analyser des données scientifiques.

  • vidéo du cours

Utilisation de Jupyter Notebook & nbgrader

Utilisation des notebooks Jupyter pour un cours ou TP sur les plateformes jupyter nbgrader du département mécanique.

Une erreur s’est glissée dans la vidéo du cours: seriez vous capable de la trouver?

  • vidéo du cours

TP virtuel avec Jupyter (vidéo)

enregistrement d’une video de présentation live sans montage d’Avril 2020

Plateforme Jupyter et Moodle (vidéo)

L’enregistrement live (assez long) comprend 3 parties (et vous pouvez vous positionner dans la vidéo):

  • de 0h00 à 1h25: présentation de la plateforme Jupyter pour des TP virtuels (en mécanique)

  • de 1h25 à 2h26: utilisation de moodle pour créer un cours sur la plateforme pédagogique du département (coté enseignant)

  • de 2h26 à 3h30: utilisation de tablettes graphiques et de tableaux blanc virtuels

Utilisation de IPython Notebook dans l’enseignement

M. Buffat, T. Dupriez, S. Di Loretto, JupyterCon 2023, Paris Mai 2023, “Flexible course management and validation system using Jupyterhub with additional services using Flask”

Conférences sur la pédagogie

  • M. BUFFAT “Retour d’expérience sur l’utilisation des plateformes Web2.0 Webwork et IPython Notebook”, Congrès de Mécanique, AFM Lyon 2015

  • M. BUFFAT “Ipython Notebook pour l’enseignement”, PYconFR, Lyon Octobre 2014

  • M. BUFFAT: “Webwork et SageCell: deux outils WEB 2.0 pour l’apprentissage de la programmation scientifique”, CANUM 2014 SMAI, Carry Le Rouet Avril 2014

  • M. BUFFAT: “Scénarisation d’enseignement présentiel en Master de Mécanique mise en oeuvre et retour d’expérience”, Colloque “Scénariser l’enseignement et l’apprentissage” organisé par l’INRP et l’ERTé e-Praxis dans le cadre de la 8ème Biennale de l’Education, Lyon 14 avril 2006. texte résumé de la communication (PDF)

  • M. BUFFAT: “WebWork un système de devoirs en ligne sous Moodle”,Conférence MoodleMoot2009, INSA de Lyon Juillet 2009

Linux / Unix

J’utilise LINUX pour mon enseignement et ma recherche, et vous trouverez sous mon compte github des guides et des outils developpés sous linux.