Create new journal entry for module 1

parent 50ed3a87
# Journal MOOC recherche reproductible - 2026-03-22 - AGR <!-- ;formation; -->
## 0 Introduction du MOOC recherche reproductible I
Objectif : technique de préparation de documents réplicables (données, logiciels et calculs)
Documents computationnels
* Jupyter
* RStudio
* OrgMode
Hors sujet : cf. futur MOOC Recherche reproductible II : pratique et outils pour gérer calculs et données
* statistique
* gestion environnement (e. g. Docker)
* automatisation (e. g. Snakemake)
* gestion volume important de données (e. g. HDF5, git LFS/annex)
Enseignants :
* Christophe Pouzat (MAP5, U. Paris-Descartes)
* Arnaud Legrand (labo informatique de Grenoble)
* Konrad Hinsen (centre Biophysique Moléculaire / Synchrotron SOLEIL)
Notation :
* 25 % quiz I (16) sauf les deux quizzes à notes minimales
* 25 % quiz P (12) attachés à l'un des trois parcours
* 40 % exercice K des trois premiers modules
* 10 % ExoEvalPair TP en autonomie évalué par les pairs
## 1 Cahier de note, de labo
### 1.0 Intro
Sur support papier et numérique : markdown
Gestion de version
### 1.1 Nous utilisons tous des cahiers de notes
Codex annotés d'Aristoteles et manuscrits de Galilée
Fiches : armoires à notes de Placcius et Leibniz ; Fulgence Tapir et ses notes fatales dans le roman *L'Île des pingouins* d'Anatole France.
Carnet de bord de Tabarly*
#### 1.1.2 Marie-Noëlle Bourguet sur les carnets d'Alexandre de Humbolt
Alexandre de Humbolt : voyage en Amérique du Sud 1799-1805, puis carnet de voyage en Italie, mesures météorologiques au brouillon puis sélectionnées pour recopiage à l'encre, notes de lectures/thématiques paragraphes numérotés, travail sur manuscrits mexicains à la bibliothèque vaticane, délégation des notes puis recopiage en citant son assistant, flux continu avec numérotation des paragraphes et des pages et renvois en avant et arrière.
#### 1.1.3 Annie Lacroix-Riz : prise de notes au travail dans les archives
Gratte-papier : du premier document de l'archive au dernier en notant les documents sans-intérêt
PC dans les années 1990 : vérification par le lecteur de la production de l'historien, numérotation automatique des notes
Synthèse : recherche dans les notes, synthèse toutes les semaines le soir ou en fin de semaine dans des fichiers papiers (liste de documents intéressants), multiplication des fichiers numériques mêmes classés sur ordinateurs
#### 1.1.4 Isabel Llano : neurophysiologiste et son cahier de labo
Paramètres constants du laser (longueur d'onde et puissance)
Enregistrement manuel chronologique des coordonnées de la platine microscope, température cellule échantillonnée dans un cerveau, paramètres de stimulation électrique
### 1.2 Aperçu historique de la prise de note
matériau : tablette de cire, argile, volumen (rouleau de papyrus) (-3000) puis codex, fiche après le XIX (dont Carl Linné), post-it, ordinateur/tablette
Codex : Ptolémée à Alexandrie vs. Eumène de Pergame, début de paragraphe indiqué par la couleur/lettrine
Canon eusébien : références croisées des évangiles
Chinois : IXe siècle concours et épreuve de culture gé, ouvrage florilège (*leishu* dont un de 370 millions de caractères)
#### 1.2.1 Organisation de la prise de notes
Fiches : détachables recollables pour faire une synthèse
Méthode de John Locke : créer un index alphabétique des pages avec la première lettre et la voyelle suivante
### 1.3 Fichiers texte et langage de balisage léger
Fichier texte, fichier numérique lisible avec un éditeur de texte (Notepad++, gedit, TextEdit)
Caractère encodés en UTF-8, pas formatable
Langage de balisage (*markup language*) : HTML mais pas destiné à être lu par un humain
Langage de balisage léger : Markdown, Wikitexte, AsciiDoc, RestructuredText
#### 1.3.1 Ressources complémentaires sur Markdown et Pandoc
Mardown et Pandoc : [« Élaboration et conversion de documents avec Markdown et Pandoc »](https://www.jdbonjour.ch/cours/markdown-pandoc/) didacticiel de Jean-Daniel Bonjour (EPFL)
Cours de GitHub : https://guides.github.com/features/mastering-markdown/
Le projet CommonMark propose, en plus d'une spécification plus rigoureuse de la syntaxe Markdown, des convertisseurs Markdown → html / LaTeX (et plus) écrits en C et en JavaScript (https://github.com/CommonMark/CommonMark).
#### 1.3.2 Encodage UTF-8
Une table des symboles UTF-8, avec leur code se trouve à l'adresse : [http://www.utf8-chartable.de/](http://www.utf8-chartable.de/). C'est pratique pour insérer un symbole pas très courant comme la lettre « TLO » : Ꮰ de la langue cherokee, ou le symbole mathématique ∀, « pour tout ».
Pour ceux qui doivent souvent utiliser des lettres grecs (par exemple pour écrire des équations), il est possible sous Linux de (re)définir des combinaisons de touches pour générer directement les dites lettres. Ces combinaisons sont définies dans le fichier `.XCompose`, le début de mon fichier contient :
```
# On charge la base de donnée de Compose la plus complète en UTF-8
include "/usr/share/X11/locale/en_US.UTF-8/Compose"
# espace insécable fine
<Multi_key> <Multi_key> <Space> : " " U202F
# Lettres greques
<Multi_key> <space> <a> : "α" Greek_alpha
<Multi_key> <space> <A> : "Α" Greek_ALPHA
<Multi_key> <space> <b> : "β" Greek_beta
<Multi_key> <space> <B> : "Β" Greek_BETA
<Multi_key> <space> <g> : "γ" Greek_gamma
<Multi_key> <space> <G> : "Γ" Greek_GAMMA
<Multi_key> <space> <d> : "δ" Greek_delta
```
J'ai en plus redéfini la « <Multikey> » pour qu'elle corresponde à la touche « impression d'écran » de mon clavier. Pour apprendre à redéfinir des touches, consultez : [https://wiki.archlinux.org/index.php/Keyboard_configuration_in_Xorg#Configuring_compose_key](https://wiki.archlinux.org/index.php/Keyboard_configuration_in_Xorg#Configuring_compose_key).
### 1.4 Pérennité et évolutivité avec la gestion de version
Traitement de texte : pas fichier texte et gestion de version imbriquée dans le fichier principal
DokuWiki : format texte, historique de version, sauvegarde à la charge de l'utilisateur, mais une page modifiable à la fois
Git : arborescence de fichiers (dont texte), historique des versions, comparaison des version, correction simultanée de plusieurs fichiers (utile pour le développement logiciel), grand projet collaboratif utilisant git (noyau Linux), sauvegarde centralisée
#### 1.4.1 Démystifions Git, Github, Gitlab
##### Notion d'historique
Duplication avec des noms de fichier, s'envoyer des mails
Gestionnaires de version (depuis les années 1970), git en 2005 pour noyau Linux
Historique avec embranchement des *commits* `git add` puis `git commit` du projet identifiés par un SHA1, `git diff` pour comparer les versions, `git chechout` pour revenir à une version antérieur
Sauvegarde synchronisée : les branches sont synchronisées en échangeant des morceaux d'historique `git push` en sur branche du serveur local, puis sur serveur distant *remote*.
##### Collaboration
`git pull` depuis le serveur distant
Détection de conflit, régler le conflit puis `git merge` sur le serveur distant
Réduire les conflits : séparer le projet en modules, faire des commit légers et commit, `git status` pour séparer différent types de commit.
##### Écosystème Git
GitHub / GitLab : interface web pour héberger des projets collaboratifs gratuitement, gestion des utilisateurs et permissions, réseau social de développeurs
Fork et pull requests introduits par GitHub : copie personnelle d'un projet, modifications personnelles, puis pull request pour partager ses améliorations au projet original.
GitHub : logiciel propriétaire, gratuit pour individu, payant pour les organisations
GitLab : version communautaire libre, entreprise propriétaire, possibilité d'héberger un gitlab dans son institution pour protéger les données.
==#idée imposer à chaque stagiaire, doctorant ou post-doc de contribuer un document dans un DocuWiki EMSE/SMS (e.g. méthode, procédure, documentation plus logiciel sous gitlab==
### 1.5 Étiquettes et logiciels d'indexation
Problème de l'indexation de fichiers numériques aux formats hétérogènes
* moteur de recherche de bureau : DocFetcher (Linux, MacOS, Windows), Tracker (Linux), Recoll (L, M, W), Spotlight (M)
Ajouter des étiquettes avec des mots-clefs entre signe de ponctuation `?phase-field?`
* commentaires en markdown ou code source,
* métadonnées des fichiers images avec ExifTool pour modifier les métadonnées, ajouter l'URL source de l'image en plus de mots-clefs
* fichiers PDF : champs `Keywords, format XMP conçu originellement par Adobe
`grep` et sa version évoluée [cgvg](http://uzix.org/cgvg.html)
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment