Contenus pour le cours « Apprendre à programmer » de la L3 SDL, parcours LCN, Université Paris Nanterre.
Contact : [email protected]
Pour travailler au développement de ce cours :
-
Créer un environnement virtuel et l'activer
-
Installer les dépendances
pip install -U -r requirements.txt
-
Démarrer jupyter
jupyter notebook
Idéalement ça devrait aussi marcher avec jupyterlab mais ce n'est pas encore le cas pour les slides
-
On peut alors modifier les fichiers markdown dans jupyter comme si c'étaient des notebooks grâce à la magie de jupytext
Autres éléments magiques :
- On peut ouvrir les notebooks en md sur Binder grâce au postBuild qui dit de compiler
l'extension jupytext. Par contre, le build initial de l'image est assez lent. (même avec
--minimize=False
qui accélère un peu) - Les badges « open in binder » sont générés avec le tag Liquid
{% notebook_badges chemin/du/notebook %}
.- Voir
_plugins/notebooks.rb
pour comprendre comment ça marche. - Utilise les variables
site.{baseurl,repository,repo_branch}
définies dans_config.yml
.
- Voir
Dependencies:
- Ruby
- Bundle
Setup:
gem install jekyll bundler
bundle config set --local path 'vendor/bundle'
bundle install
Regenerate:
bundle exec jekyll build
bundle exec jekyll serve
Astuce pour les pages : Jekyll n'est pas très bon pour les pages qui ne sont pas des postes de blog,
les ajouter dans _pages
(ce qui fonctionne parce qu'on l'a mis dans _config.yml
)- et leur donner
un permalink
dans le header.
(En cours)
Pour accélérer le lancement des notebooks dans Binder, on utilise un repo d'environnement
différent (l'idée est que comme ce
repo change rarement, il y a rarement besoin de reconstruire l'image pour Binder). Il faut penser à
le mettre à jour quand on change les dépendances ici tout en lui laissant nbgitpuller
.
Copyright © 2023 Loïc Grobol <[email protected]>
Sauf indication contraire, les fichiers présents dans ce dépôt sont distribués selon les termes de la licence Creative Commons Attribution 4.0 International.
Un résumé simplifié de cette licence est disponible à https://creativecommons.org/licenses/by/4.0/.
Le texte intégral de cette licence est disponible à https://creativecommons.org/licenses/by/4.0/legalcode