Summary¶
Questions
What recommendations can we take home?
Discussion
Please write your questions in the collaborative notes document.
Any other ideas?
Any incremental improvements that can benefit your projects?
What’s nice but overkill for your work?
Some of the recommendations below can be used as food for thought.
There is not the one right way: it is always a balance¶
Jupyter notebooks can be good documentation for scripts
For simple scripts and post-processing, Jupyter notebooks can form a nice self-documenting pipeline.
README.md or README.rst?
Functionality-wise both Markdown and RST are very similar.
With RST you can generate a table of contents (TOC) automatically by adding
.. contents:: Table of Contents
.On GitLab you can generate a TOC in Markdown with
[[_TOC_]]
.Nowadays also GitHub generates a TOC for README.md.
If you need math equations, RST/Sphinx might be a good fit.
Resizing images in README.rst on GitHub is currently not easy.
READMEs or Read the Docs?
For smaller projects READMEs can be absolutely enough.
If the code is closed-source, you probably prefer Read the Docs (or similar).
How to make sure that code changes come together with documentation changes?
Make documentation part of your code review.
Sphinx/RTD or GitHub pages or both?
GitHub pages typically serves one version (one branch). It is often used as the project/group/personal page.
RTD can serve several versions (several branches/tags) at the same time.
Some projects use both.