diff --git a/.gitignore b/.gitignore index 6273230..fae3340 100644 --- a/.gitignore +++ b/.gitignore @@ -1,6 +1,6 @@ # Created by https://www.toptal.com/developers/gitignore/api/python # Edit at https://www.toptal.com/developers/gitignore?templates=python -docs/documentation.html +docs/*.html _build ### Python ### # Byte-compiled / optimized / DLL files diff --git a/docs/distribution.md b/docs/distribution.md index def8bda..59e39be 100644 --- a/docs/distribution.md +++ b/docs/distribution.md @@ -15,48 +15,4 @@ marp: true # Distribution Best Practices in Modern Software Development: 23.11.23 -Henrik Finsberg and Jørgen Dokken - ---- - -## Agenda - -- How to package a python project -- Uploading a package to pypi - - Creating a GitHub action to publish a package on pypi whenever you make a new release -- Uploading conda package to conda-forge -- Creating and publishing docker images - - Creating a GitHub action to publish a new docker image to the GitHub registry whenever you make a new release -- Licensing - - Which license to put on your code and why you should use a permissive license - ---- - -## Creating a package - -- A set of modules can be collected in a package - -- A package is organized as module files in a directory tree - -- Each subdirectory must have a __init__.py file (can be empty) - -``` -examples/my-package -├── LICENSE -├── pyproject.toml -├── README.md -├── src -│ └── pkg -│ ├── analysis.py -│ ├── __init__.py -│ └── printing -│ ├── __init__.py -│ └── printing.py -└── test - ├── test_analysis.py - └── test_printing.py -``` - ---- - -## Installing a package +To be included in a future version diff --git a/docs/documentation.md b/docs/documentation.md index d1a9a83..abc6a0a 100644 --- a/docs/documentation.md +++ b/docs/documentation.md @@ -2,7 +2,7 @@ theme: default paginate: true header: 'Best Practices in Modern Software Development: Documentation' -footer: '23.11.23 - Henrik Finsberg and Jørgen Dokken' +footer: '23.11.23 - Jørgen Dokken' size: 16:9 style: | .small-text { diff --git a/docs/environments.md b/docs/environments.md index 0d5d504..fa3b9dc 100644 --- a/docs/environments.md +++ b/docs/environments.md @@ -2,7 +2,7 @@ theme: default paginate: true header: 'Best Practices in Modern Software Development: Reproducible environments' -footer: '23.11.23 - Henrik Finsberg and Jørgen Dokken' +footer: '23.11.23 - Benjamin Ragan-Kelly' size: 16:9 style: | .small-text { diff --git a/docs/paper.md b/docs/paper.md index e763d15..8c7a69a 100644 --- a/docs/paper.md +++ b/docs/paper.md @@ -2,7 +2,7 @@ theme: default paginate: true header: 'Best Practices in Modern Software Development: Paper with code' -footer: '23.11.23 - Henrik Finsberg and Jørgen Dokken' +footer: '23.11.23 - Henrik Finsberg' size: 16:9 style: | .small-text { diff --git a/docs/repo.md b/docs/repo.md index 3298080..a4dadb8 100644 --- a/docs/repo.md +++ b/docs/repo.md @@ -2,7 +2,7 @@ theme: default paginate: true header: 'Best Practices in Modern Software Development: Code and Data repositories' -footer: '23.11.23 - Henrik Finsberg and Jørgen Dokken' +footer: '23.11.23 - Henrik Finsberg' size: 16:9 style: | .small-text { diff --git a/intro.md b/intro.md new file mode 100644 index 0000000..2294b1a --- /dev/null +++ b/intro.md @@ -0,0 +1,48 @@ +--- +theme: default +paginate: true +header: 'Best Practices in Modern Software Development' +footer: '23.11.23 - Henrik Finsberg' +size: 16:9 +style: | + .small-text { + font-size: 0.55rem; + } +html: true +marp: true +--- + +# Elevating Scientific Computing at Simula: Best Practices in Modern Software Development. + +23.11.23 + +Henrik Finsberg, Jørgen Dokken and Benjamin Ragan-Kelly + +--- + +## Research at Simula is based on code + +* We write code to **pre-process** data +* We write code to **run simulations** +* We write code to create figures and tables (**post-processing**) + +* Whenever you publish a paper, you need to have recipe for how to reproduce the results in the paper + +--- + +## Goal of this workshops + +- 11.15 - 11.45: Code and data repositories (Henrik) +- 11.45 - 12.15: Reproducible environments (Min) +- 12.15 - 12.45: Lunch +- 12.45 - 13.15: Linters, formatters and continuous integration (Henrik + Jørgen) +- 13.15 - 13.45: Documentation (Jørgen) +- 13.45 - 14.00: Break +- 14.00 - 14.30: A paper with code (Henrik) + +--- + +## Material from the workshop + +- https://github.com/scientificcomputing/seminar-23-11-2023 +- https://scientificcomputing.github.io/seminar-23-11-2023/README.html