Skip to content

Commit

Permalink
Built site for gh-pages
Browse files Browse the repository at this point in the history
  • Loading branch information
Quarto GHA Workflow Runner committed Nov 26, 2024
1 parent 25f3e7c commit 4fafd80
Show file tree
Hide file tree
Showing 6 changed files with 146 additions and 75 deletions.
2 changes: 1 addition & 1 deletion .nojekyll
Original file line number Diff line number Diff line change
@@ -1 +1 @@
b528e08e
4e17e053
16 changes: 8 additions & 8 deletions index.html
Original file line number Diff line number Diff line change
Expand Up @@ -199,7 +199,7 @@ <h2 class="anchored" data-anchor-id="formation-aux-bonnes-pratiques-avec-git-et"

<div class="list grid quarto-listing-cols-4">

<div class="g-col-1" data-index="0" data-categories="UiUyQ0dpdA==" data-listing-date-sort="1643673600000" data-listing-file-modified-sort="1732639198570" data-listing-date-modified-sort="NaN" data-listing-reading-time-sort="1" data-listing-word-count-sort="1">
<div class="g-col-1" data-index="0" data-categories="UiUyQ0dpdA==" data-listing-date-sort="1643673600000" data-listing-file-modified-sort="1732642717573" data-listing-date-modified-sort="NaN" data-listing-reading-time-sort="1" data-listing-word-count-sort="1">
<a href="./slides/light.html" target="_blank" rel="noopener" class="grid-item-link"> <!-- Added link wrapper -->
</a><div class="quarto-grid-item card h-100 card-left"><a href="./slides/light.html" target="_blank" rel="noopener" class="grid-item-link">

Expand Down Expand Up @@ -257,15 +257,15 @@ <h5 class="no-anchor card-title listing-title">Version courte</h5>
index.qmd
</div>
<div class="card-file-modified listing-file-modified">
11/26/24, 4:39:58 PM
11/26/24, 5:38:37 PM
</div>
</div> -->

</div>
<!-- Added link wrapper -->
</div>

<div class="g-col-1" data-index="1" data-categories="UiUyQ0dpdA==" data-listing-date-sort="1643587200000" data-listing-file-modified-sort="1732639198562" data-listing-date-modified-sort="NaN" data-listing-reading-time-sort="1" data-listing-word-count-sort="1">
<div class="g-col-1" data-index="1" data-categories="UiUyQ0dpdA==" data-listing-date-sort="1643587200000" data-listing-file-modified-sort="1732642717569" data-listing-date-modified-sort="NaN" data-listing-reading-time-sort="1" data-listing-word-count-sort="1">
<a href="./slides/complete.html" target="_blank" rel="noopener" class="grid-item-link"> <!-- Added link wrapper -->
</a><div class="quarto-grid-item card h-100 card-left"><a href="./slides/complete.html" target="_blank" rel="noopener" class="grid-item-link">

Expand Down Expand Up @@ -322,15 +322,15 @@ <h5 class="no-anchor card-title listing-title">Version complète</h5>
index.qmd
</div>
<div class="card-file-modified listing-file-modified">
11/26/24, 4:39:58 PM
11/26/24, 5:38:37 PM
</div>
</div> -->

</div>
<!-- Added link wrapper -->
</div>

<div class="g-col-1" data-index="2" data-categories="UiUyQ0dpdA==" data-listing-date-sort="1654041600000" data-listing-file-modified-sort="1732639198558" data-listing-date-modified-sort="NaN" data-listing-reading-time-sort="1" data-listing-word-count-sort="1">
<div class="g-col-1" data-index="2" data-categories="UiUyQ0dpdA==" data-listing-date-sort="1654041600000" data-listing-file-modified-sort="1732642717561" data-listing-date-modified-sort="NaN" data-listing-reading-time-sort="1" data-listing-word-count-sort="1">
<a href="./slides/manageurs.html" target="_blank" rel="noopener" class="grid-item-link"> <!-- Added link wrapper -->
</a><div class="quarto-grid-item card h-100 card-left"><a href="./slides/manageurs.html" target="_blank" rel="noopener" class="grid-item-link">

Expand Down Expand Up @@ -388,15 +388,15 @@ <h5 class="no-anchor card-title listing-title">Sensibilisation pour les manageur
index.qmd
</div>
<div class="card-file-modified listing-file-modified">
11/26/24, 4:39:58 PM
11/26/24, 5:38:37 PM
</div>
</div> -->

</div>
<!-- Added link wrapper -->
</div>

<div class="g-col-1" data-index="3" data-categories="UiUyQ0dpdA==" data-listing-date-sort="1694131200000" data-listing-file-modified-sort="1732639198570" data-listing-date-modified-sort="NaN" data-listing-reading-time-sort="1" data-listing-word-count-sort="1">
<div class="g-col-1" data-index="3" data-categories="UiUyQ0dpdA==" data-listing-date-sort="1694131200000" data-listing-file-modified-sort="1732642717577" data-listing-date-modified-sort="NaN" data-listing-reading-time-sort="1" data-listing-word-count-sort="1">
<a href="https://diit.pages.lab.sspcloud.fr/presentation/20230908-sensibilisation-self/" target="_blank" rel="noopener" class="grid-item-link"> <!-- Added link wrapper -->
</a><div class="quarto-grid-item card h-100 card-left"><a href="https://diit.pages.lab.sspcloud.fr/presentation/20230908-sensibilisation-self/" target="_blank" rel="noopener" class="grid-item-link">

Expand Down Expand Up @@ -453,7 +453,7 @@ <h5 class="no-anchor card-title listing-title">Sensibilisation pour les agents</
index.qmd
</div>
<div class="card-file-modified listing-file-modified">
11/26/24, 4:39:58 PM
11/26/24, 5:38:37 PM
</div>
</div> -->

Expand Down
52 changes: 40 additions & 12 deletions search.json
Original file line number Diff line number Diff line change
Expand Up @@ -994,25 +994,53 @@
"text": "Dépasser le “mur de la production”\n\nL’opportunité d’organisations plus continues"
},
{
"objectID": "slides/complete.html#application-5-partie-1",
"href": "slides/complete.html#application-5-partie-1",
"objectID": "slides/complete.html#application-5-1",
"href": "slides/complete.html#application-5-1",
"title": "Bonnes pratiques pour les projets statistiques",
"section": "Application 5: partie 1",
"text": "Application 5: partie 1\n\n\n\n\nPartie 1 : transition vers le stockage S3\n\n\n\n\nEn début de script, créer les chemins où les données pourront être trouvées (voir ci-dessous)\nCréer un connecteur Arrow entre votre session R et l’espace de stockage S3\n\nbucket &lt;- s3_bucket(bucket_formation, endpoint_override = Sys.getenv(\"AWS_S3_ENDPOINT\"))\nbucket_path &lt;- bucket$path(paste0(path_within_bucket, \"/RPindividus\"))\n\nDans main.R, modifier les codes utilisant open_dataset pour remplacer les chemins par la variable bucket_path.\n\ndf &lt;- open_dataset(\n bucket_path,\n hive_style = TRUE\n) |&gt;\n filter(REGION == 24) |&gt;\n select(any_of(columns_subset)) |&gt;\n collect()\n\nSi nécessaire, remplacer l’import du geojson\n\ndepartements &lt;- aws.s3::s3read_using(\n FUN = sf::st_read, \n object = \"france.geojson\", \n bucket = paste0(bucket_formation, \"/\", path_within_bucket),\n opts = list(\"region\" = \"\")\n )\n\n\n\nConnecteur pour la question 1\n\n\n insee\n\n\nbucket_formation &lt;- \"projet-formation\"\npath_within_bucket &lt;- \"/bonnes-pratiques/data\"\n\n\nbucket_formation &lt;- \"public\"\npath_within_bucket &lt;- \"/ssplab-formation\""
"section": "Application 5",
"text": "Application 5\n\n\n\n\nPartie 1 : Transition vers le stockage S3\n\n\n\nTout au long de la formation, on se plaçait déjà dans le paradigme cloud dans la mesure où l’on développait dans des conteneurs hébergés sur des serveurs distants. Néanmoins, on a traité le stockage de manière “traditionnelle”, en important/exportant les fichiers depuis/vers le stockage local au conteneur. L’objectif de cet exercice est de transitionner vers un stockage cloud, en l’occurence le stockage de type S3.\n\n\nEn début de script, créer les chemins où les données pourront être trouvées sur S3\n\n\n insee\n\n\nbucket_formation &lt;- \"projet-formation\"\npath_within_bucket &lt;- \"/bonnes-pratiques/data\"\n\n\nbucket_formation &lt;- \"public\"\npath_within_bucket &lt;- \"/ssplab-formation\"\n\n\n\n\nCréer un connecteur Arrow entre votre session R et le bucket de la formation sur S3\n\nbucket &lt;- s3_bucket(bucket_formation, endpoint_override = Sys.getenv(\"AWS_S3_ENDPOINT\"))\nbucket_path &lt;- bucket$path(paste0(path_within_bucket, \"/RPindividus\"))\n\nAnalyser la structure du chemin des données, contenu dans la variable bucket_path\nDans script.R, modifier les codes utilisant arrow::open_dataset pour importer le fichier data/RPindividus_partitionne.parquet directement depuis S3.\nDe même, modifier l’import du fichier france.geojson pour qu’il soit importé directement depuis S3 grâce à la fonction aws.s3::s3read_using\n\n\n\nSolution\n\ndepartements &lt;- aws.s3::s3read_using(\n FUN = sf::st_read, \n object = \"france.geojson\", \n bucket = paste0(bucket_formation, \"/\", path_within_bucket),\n opts = list(\"region\" = \"\")\n )"
},
{
"objectID": "slides/complete.html#checkpoint-8",
"href": "slides/complete.html#checkpoint-8",
"title": "Bonnes pratiques pour les projets statistiques",
"section": "Checkpoint",
"text": "Checkpoint\n\n\n\n\n\n\n\nCheckpoint\n\n\n\n insee\n\n\n\nLe script script.R\n\n\n\n\nLe script script.R"
},
{
"objectID": "slides/complete.html#application-5-partie-2",
"href": "slides/complete.html#application-5-partie-2",
"objectID": "slides/complete.html#application-5-2",
"href": "slides/complete.html#application-5-2",
"title": "Bonnes pratiques pour les projets statistiques",
"section": "Application 5: partie 2",
"text": "Application 5: partie 2\n\n\n\nPartie 2 : orchestrer sa chaîne de production\n\n\nAu fil des chapitres précédents, nous avons appliqué un ensemble de bonnes pratiques à notre chaîne de production pour accroître sa qualité et sa maintenabilité. Néanmoins, celle-ci est encore sous la forme d’un unique script.\nDe manière générale, on a plutôt envie de modéliser les étapes d’une chaîne comme une série de fonctions, avec une fonction “cheffe d’orchestre” qui appelle les autres dans le bon ordre.\n\n\nCréer les scripts suivants:\n\n\nR/functions_import.R (contenu)\nR/functions_stats_desc.R (contenu)\nR/functions_models.R (contenu)\n\n\nModifier main.R pour tenir compte de la modularisation (version + sspcloud ou version + LS3)\nPasser la souris sur une des nouvelles fonctions et faire F1\n\n\n\n\n\n\n\n\n\n\n\ntargets: un orchestrateur formel\n\n\nOn aurait pu également utiliser un orchestrateur dédié pour effectuer cette tâche, comme le package targets. Les plus curieux d’entre vous pourront aller voir le chapitre et les exercices qui lui étaient auparavant dédiés dans cette formation."
"section": "Application 5",
"text": "Application 5\n\n\n\nPartie 2 : Orchestrer sa chaîne de production\n\n\nAu fil des chapitres précédents, nous avons appliqué un ensemble de bonnes pratiques à notre chaîne de production pour accroître sa qualité et sa maintenabilité. Néanmoins, celle-ci est encore sous la forme d’un unique script.\nDe manière générale, on a plutôt envie de modéliser les étapes d’une chaîne comme une série de fonctions, avec une fonction “cheffe d’orchestre” qui appelle les autres dans le bon ordre.\n\n\nCréer les scripts suivants:\n\n\nR/functions_import.R (contenu)\nR/functions_stats_desc.R (contenu)\nR/functions_models.R (contenu)\n\n\nModifier main.R pour tenir compte de la modularisation (version + sspcloud ou version + LS3)\nPasser la souris sur une des nouvelles fonctions et faire F1\n\n\n\n\n\n\n\n\n\n\n\ntargets: un orchestrateur formel\n\n\nOn aurait pu également utiliser un orchestrateur dédié pour effectuer cette tâche, comme le package targets. Les plus curieux d’entre vous pourront aller voir le chapitre et les exercices qui lui étaient auparavant dédiés dans cette formation."
},
{
"objectID": "slides/complete.html#application-5-3",
"href": "slides/complete.html#application-5-3",
"title": "Bonnes pratiques pour les projets statistiques",
"section": "Application 5",
"text": "Application 5\n\n\n\n\nPartie 3 : ajout de contrôles de qualité des données\n\n\nUn critère de qualité majeur d’une chaîne de production est sa robustesse. Naturellement, les données en entrée de la chaîne peuvent évoluer dans le temps. Afin de gérer au mieux les risques posés par de telles évolutions, on va ajouter des contrôles sur la qualité des données, en entrée et en sortie de la chaîne."
},
{
"objectID": "slides/complete.html#application-5-partie-3",
"href": "slides/complete.html#application-5-partie-3",
"objectID": "slides/complete.html#application-5-4",
"href": "slides/complete.html#application-5-4",
"title": "Bonnes pratiques pour les projets statistiques",
"section": "Application 5: partie 3",
"text": "Application 5: partie 3\n\n\n\n\nPartie 3 : ajout de contrôles de qualité des données\n\n\nUn critère de qualité majeur d’une chaîne de production est sa robustesse. Naturellement, les données en entrée de la chaîne peuvent évoluer dans le temps. Afin de gérer au mieux les risques posés par de telles évolutions, on va ajouter des contrôles sur la qualité des données, en entrée et en sortie de la chaîne.\n\n\n\n\n\n\n\n\nPartie 4 : tests unitaires et versionnage de la chaîne\n\n\nNotre chaîne tourne à présent de manière robuste. Pour autant, ce n’est pas un objet fixe : on peut vouloir lui apporter des corrections ou des améliorations fonctionnelles. Et ces modifications peuvent, à leur tour, provoquer des nouvelles erreurs. Pour gérer ces risques, on va : - versionner la chaîne, afin de certifier le code qui la fait tourner sans erreur à un moment T - implémenter des tests unitaires, qui permettent de continuer à modifier la chaîne sans risquer de régressions\n\n\n\n\n\n\n\n\nPartie 5 : un rapport reproductible pour documenter sa chaîne de production\n\n\nUne bonne manière de favoriser à la fois la maintenabilité de sa chaîne et la réutilisationde ses produits est de documenter son fonctionnement. Le format quarto — successeur de R Markdown — permet de reproduire facilement des rapports reproductibles, qui intègrent code et texte. En plus, ces rapports peuvent être facilement publiés en différents formats, du plus interactif (html) aux plus classiques (pdf, odt, etc.).\n\n\n\n\n\n\n\n\nPartie 6 : automatiser la mise à disposition\n\n\nOn dispose finalement d’une chaîne orchestrée, robuste et bien documentée. Afin d’en faire une chaîne vraiment intégrée de bout en bout, on va automatiser les étapes, de sorte à ce que les modifications apportées au projet se répércutent sur ses sorties. Pour cela, on va utiliser les outils de l’intégration continue proposés par GitHub / GitLab."
"section": "Application 5",
"text": "Application 5\n\n\n\n\nPartie 4 : tests unitaires et versionnage de la chaîne\n\n\nNotre chaîne tourne à présent de manière robuste. Pour autant, ce n’est pas un objet fixe : on peut vouloir lui apporter des corrections ou des améliorations fonctionnelles. Et ces modifications peuvent, à leur tour, provoquer des nouvelles erreurs. Pour gérer ces risques, on va : - versionner la chaîne, afin de certifier le code qui la fait tourner sans erreur à un moment T - implémenter des tests unitaires, qui permettent de continuer à modifier la chaîne sans risquer de régressions"
},
{
"objectID": "slides/complete.html#application-5-5",
"href": "slides/complete.html#application-5-5",
"title": "Bonnes pratiques pour les projets statistiques",
"section": "Application 5",
"text": "Application 5\n\n\n\n\nPartie 5 : un rapport reproductible pour documenter sa chaîne de production\n\n\nUne bonne manière de favoriser à la fois la maintenabilité de sa chaîne et la réutilisationde ses produits est de documenter son fonctionnement. Le format quarto — successeur de R Markdown — permet de reproduire facilement des rapports reproductibles, qui intègrent code et texte. En plus, ces rapports peuvent être facilement publiés en différents formats, du plus interactif (html) aux plus classiques (pdf, odt, etc.)."
},
{
"objectID": "slides/complete.html#application-5-6",
"href": "slides/complete.html#application-5-6",
"title": "Bonnes pratiques pour les projets statistiques",
"section": "Application 5",
"text": "Application 5\n\n\n\n\nPartie 6 : automatiser la mise à disposition\n\n\nOn dispose finalement d’une chaîne orchestrée, robuste et bien documentée. Afin d’en faire une chaîne vraiment intégrée de bout en bout, on va automatiser les étapes, de sorte à ce que les modifications apportées au projet se répércutent sur ses sorties. Pour cela, on va utiliser les outils de l’intégration continue proposés par GitHub / GitLab."
},
{
"objectID": "slides/complete.html#ressources-supplémentaires-4",
Expand Down
16 changes: 8 additions & 8 deletions sitemap.xml
Original file line number Diff line number Diff line change
Expand Up @@ -2,34 +2,34 @@
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
<loc>https://InseeFrLab.github.io/formation-bonnes-pratiques-git-R/cards/version-sensibilisation/index.html</loc>
<lastmod>2024-11-26T16:39:58.570Z</lastmod>
<lastmod>2024-11-26T17:38:37.577Z</lastmod>
</url>
<url>
<loc>https://InseeFrLab.github.io/formation-bonnes-pratiques-git-R/cards/version-full/index.html</loc>
<lastmod>2024-11-26T16:39:58.562Z</lastmod>
<lastmod>2024-11-26T17:38:37.569Z</lastmod>
</url>
<url>
<loc>https://InseeFrLab.github.io/formation-bonnes-pratiques-git-R/index.html</loc>
<lastmod>2024-11-26T16:39:58.574Z</lastmod>
<lastmod>2024-11-26T17:38:37.577Z</lastmod>
</url>
<url>
<loc>https://InseeFrLab.github.io/formation-bonnes-pratiques-git-R/slides/complete.html</loc>
<lastmod>2024-11-26T16:39:58.590Z</lastmod>
<lastmod>2024-11-26T17:38:37.597Z</lastmod>
</url>
<url>
<loc>https://InseeFrLab.github.io/formation-bonnes-pratiques-git-R/slides/light.html</loc>
<lastmod>2024-11-26T16:39:58.590Z</lastmod>
<lastmod>2024-11-26T17:38:37.597Z</lastmod>
</url>
<url>
<loc>https://InseeFrLab.github.io/formation-bonnes-pratiques-git-R/slides/manageurs.html</loc>
<lastmod>2024-11-26T16:39:58.594Z</lastmod>
<lastmod>2024-11-26T17:38:37.597Z</lastmod>
</url>
<url>
<loc>https://InseeFrLab.github.io/formation-bonnes-pratiques-git-R/cards/version-boss/index.html</loc>
<lastmod>2024-11-26T16:39:58.558Z</lastmod>
<lastmod>2024-11-26T17:38:37.561Z</lastmod>
</url>
<url>
<loc>https://InseeFrLab.github.io/formation-bonnes-pratiques-git-R/cards/version-light/index.html</loc>
<lastmod>2024-11-26T16:39:58.570Z</lastmod>
<lastmod>2024-11-26T17:38:37.573Z</lastmod>
</url>
</urlset>
Loading

0 comments on commit 4fafd80

Please sign in to comment.