diff --git a/journal/module_2.html b/journal/module_2.html new file mode 100644 index 0000000000000000000000000000000000000000..262d89e29e763d517eb37ef6f6c2d44fb1f4796e --- /dev/null +++ b/journal/module_2.html @@ -0,0 +1,406 @@ + + + + + + + + + + + + + +module_2 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + +
+

Module 2 : La vitrine et l’envers du décor : le document computationnel

+
+

0. Introduction

+

Objectifs

+
    +
  • Extension de la traçabilité aux calculs et à ses résultats
  • +
  • Intégration du code et des résultats dans un document du type rapport technique / article scientifique
  • +
  • Présentation de 3 outils pour écrire un document computationnel: +
      +
    • Jupyter, pour python
    • +
    • RStudio, pour R
    • +
    • Emacs/Org-mode, pour plusieurs langage
    • +
  • +
+

Ces envionnements: - Améliore la traçabilité des calculs - Permet de présenter facilement ses travaux aux collègues - Accéder à l’ensemble des calculs sous-jacents à une analyse

+
+
+

1. Exemple récents d’études assez discutées

+

Exemple

+
    +
  • Reinhart et Rogoff : si dette > 90% PIB -> croissance /2.
  • +
+

Erreurs de calculs, pratiques douteuses … mais travaux ont eu de l’impact car les données n’étaient pas mise à disposition

+
    +
  • Geoffrey Chang
  • +
+

Un code avait mal était fait, code transmit par d’autre lavboratoire. Causant de mauvais calcul de structure proteique

+

-> manque de rigueur et de transparence

+
+
+

2. Pourquoi est-ce difficile ?

+
+

Manque d’informations

+

Il faut expliciter: - sources et données

+

données indisponibles = resultats difficile à vérifier

+
    +
  • choix
  • +
+

choix non expliqués = choix suspicieux

+

Le cahier de labo peut aider

+
+
+

L’ordinateur, source d’erreurs

+
    +
  • point and click (on ne sait pas trop ce qui se passe, boite noire)
  • +
  • les tableurs +
      +
    • nom de gène : MARCH1 -> 2016-03-01 …
    • +
  • +
  • Pile logicielle complexe +
      +
    • logiciel propriétaire
    • +
  • +
  • bug
  • +
+
+
+

Le manque de rigueur et d’organisation

+
    +
  • pas de backup
  • +
  • pas d’historique
  • +
  • pas de contrôle qualité
  • +
+
+
+

Dimension cuturelle et sociale

+

Article = version simplifié de la procédure

+

Données trop grosses pour être mise à disposition

+

Les traitements informatique ne sont expliqué que succintement

+

Beaucoup de travail pour tout partager et après tout pourquoi s’embéter si personne ne les demandent ?

+
+
+

Tout rendre public ?

+
    +
  • les faiblesses deviendraient évidentes ? oui mais c’est la réalité
  • +
  • Quelqu’un pourrait trouver une erreur ? Mais ca permet de les corriger
  • +
  • Quelqu’un pourrait en tirer avantage à ma place ? +
      +
    • les articles les plus cité sont des articles méthodologiques/logiciel
    • +
    • montrer ce que l’on fait c’est probablement le meilleur moyen de mettre en avant la propriété intellectuelle
    • +
  • +
  • Les données peuvent être sensible +
      +
    • outil de cryptographie “facile d’accés”
    • +
  • +
+
+
+

Les outils à éviter et alternatives

+
    +
  • outils, formats, et services propriétaires +
      +
    • open source pour
    • +
    • format texte
    • +
    • stocker les données dans des services libres
    • +
  • +
  • Attention au outil intuitif +
      +
    • plus difficile pour le suivi
    • +
  • +
+
+
+

Changement de paradigme

+
    +
  1. Manque d’information, problème d’accès aux données
  2. +
  3. Erreurs de calcul
  4. +
  5. Manque de rigueur scientifique et technique
  6. +
+

Expliquer augmente les chances de trouver les erreurs et de les élimineré

+

Exigence de la part de la société civil de publication des différentes sources dans le but d’améliorer la recherche et gagner la confiance avec tout le monde ;p

+
+
+
+

3. Le document computationnel : principe

+
+

La science moderne

+

La science se passe de plus en plus derrière un ordinateur

+

Données -> analyses visualisations -> publication

+

Article est la partie immergée de l’iceberg

+
+
+

Objectif méthodologique

+

Garder les trace afin de : - inspecter : justifier / comprendre - refaire : vérifier / corriger / réutiliser

+

Notebook : la vitrine (document computationnel) et l’envers du décors (source)

+

Un document computationnel contient: - des commentaires - du code - un aperçu des données - les résultats de calculs - des liens hypertextes - des images

+

Il permet de: - inspecter les calculs - réexécuter facilement les calculs si l’environnement d’origine est disponible - Documenter le code - Expliquer les choix faits - Utiliser plusieur langages (mais c’est un peu compliqué)

+
+
+
+

4. Prise en main des outils

+
+
+

4B. Prise en main de l’outil RStudio

+
+
+

5. Travailler avec les autres

+
+

Préparer un document pour un jounal

+

pdf LaTex bien installé

+

Expliciter les cellules a afficher

+

Besoin de beaucoup de travailler pour avoir un environnement parfaitement configuré pour générer le pdf

+
+
+

Convaincre vos co-auteurs

+

plusieurs réaction: - bonne idée ! - pas le temps - pourquoi changer ?

+

bonne idée Il faut assurer le service après-vente - crossplatform - gérer la complexité

+

Si plusieurs co-auteur utilise le même type environnement permet de s’assurer que le fichier est correcte

+

pas le temps investissement minima

+

édition du fichier de publication

+

pourquoi changer un document computationnel séparé produit tous les résultats et toutes les figures

+

un autre document “classique” intégré ces figures

+

mais tout est concervé, documenté et recalculable dans votre document computationnel

+
+
+
+

Publier / partager votre document

+

Rpubs - parfait pour partage rapide mais pas pérenne

+

Dropbox, et autres - pérénité, accés ?? ..

+

Gitlab / github / …

+
    +
  1. Rendre public (même l’historique)
  2. +
  3. le prendre en compte dés le départ
  4. +
  5. faire le ménage et archiver l’état dans un site compagnon
  6. +
+

Sites compagnons service d’hébergement - runmycode, éditeurs, …

+

Archive ouverte - Article: HAL; code et données : Figshare / zenodo

+

Faire en fonction de: - co-auteurs - contrainte techniques - contraintes de confidentialité / copyright

+

Préparation d’un document pour un journal ou pour une conférence

+

De quoi aurez-vous besoin pour produire un document pdf:

+
    +
  • En interne: pandoc, knitr ou emacs/org-mode.
  • +
  • LaTeX devra aussi être installé
  • +
+
+
+

6. Analyse comparé des différents outils

+

jupyter : Facile car tout en ligne, dynamique

+

Orgmode : recherche par regex -> pratiique pour les étiquettes donc pour un journal

+

Cas d’un cahier de laboratoire

+

Article reproductible

+
|                 | Origine   | technologie        | utilisation   | navigation | format | article?  |
+|-----------------|-----------|--------------------|---------------|------------|--------|-----------|
+| jupyter         | 2001      | web, app, python   | facile        | limitée    | JSON   | Difficile |
+| Rstudio / knitr | 2011/2014 | IDE, java/R        | facile        | limitée    | Rmd    | oui       |
+| Org-Mode        | 1976/2008 | Editeur, EmacsLisp | plus complexe | puissante  | org    | oui       |
+
+
+ + + + +
+ + + + + + + + + + + + + + + diff --git a/journal/module_2.md b/journal/module_2.md index a707e8f2badcb818e477c8d76c12b40e5062cab7..377799aef3cfe55d9e4f496506f7e59d55cafab3 100644 --- a/journal/module_2.md +++ b/journal/module_2.md @@ -137,9 +137,95 @@ Il permet de: ## 4B. Prise en main de l'outil RStudio +## 5. Travailler avec les autres +### Préparer un document pour un jounal +**pdf** +*LaTex* bien installé +Expliciter les cellules a afficher +Besoin de beaucoup de travailler pour avoir un environnement parfaitement +configuré pour générer le pdf +### Convaincre vos co-auteurs +plusieurs réaction: +- bonne idée ! +- pas le temps +- pourquoi changer ? +**bonne idée** +Il faut assurer le service après-vente +- crossplatform +- gérer la complexité + +Si plusieurs co-auteur utilise le même type environnement permet de s'assurer +que le fichier est correcte + +**pas le temps** +investissement minima + +édition du fichier de publication + + +**pourquoi changer** +un document computationnel séparé produit tous les résultats et toutes les +figures + +un autre document "classique" intégré ces figures + +mais tout est **concervé, documenté et recalculable** dans votre document +computationnel + + +## Publier / partager votre document + +**Rpubs ** +- parfait pour partage rapide mais pas pérenne + +**Dropbox, et autres** +- ~~pérénité~~, accés ?? .. + +**Gitlab / github / ...** + +1. Rendre public (**même l'historique**) +2. le prendre en compte dés le départ +3. faire le ménage et archiver l'état dans un site compagnon + + +**Sites compagnons** service d'hébergement +- runmycode, éditeurs, ... + +**Archive ouverte** +- Article: HAL; code et données : Figshare / zenodo + +Faire en fonction de: +- co-auteurs +- contrainte techniques +- contraintes de confidentialité / copyright + + +Préparation d'un document pour un journal ou pour une conférence + +De quoi aurez-vous besoin pour produire un document pdf: + +- En interne: pandoc, knitr ou emacs/org-mode. +- LaTeX devra aussi être installé + +## 6. Analyse comparé des différents outils + +jupyter : Facile car tout en ligne, dynamique + +Orgmode : recherche par regex -> pratiique pour les étiquettes donc pour un journal + +Cas d'un cahier de laboratoire + +Article reproductible +``` +| | Origine | technologie | utilisation | navigation | format | article? | +|-----------------|-----------|--------------------|---------------|------------|--------|-----------| +| jupyter | 2001 | web, app, python | facile | limitée | JSON | Difficile | +| Rstudio / knitr | 2011/2014 | IDE, java/R | facile | limitée | Rmd | oui | +| Org-Mode | 1976/2008 | Editeur, EmacsLisp | plus complexe | puissante | org | oui | +```