10 Further reading
Everything here is cited in one of the three source papers or is a tool those papers recommend. It is grouped by task, not by author.
Full bibliographic details for everything named on this page, and everywhere else in the wiki, are in References.
10.1 The three source papers
TADA
Ivimey-Cook, E. R., et al. (2025). TADA! Simple guidelines to improve analytical code sharing for transparency and reproducibility. EcoEvoRxiv. https://doi.org/10.32942/X2D93K (preprint)
The four guidelines, the evidence for why they are needed, and “How To” boxes for each letter with a pre-TADA and post-TADA code comparison. A checklist in several languages is supplementary Figure S1.
Companion site: https://eivimeycook.github.io/TADA/
SORTEE guidelines
Pick, J. L., et al. (2026). The SORTEE guidelines for data and code quality control in ecology and evolutionary biology. Peer Community Journal 6: e20. https://doi.org/10.24072/pcjournal.687
Six stages of checks, written for journal data editors, that define what “good enough to archive” means. It also has suggestions for authors and for journals. Open access, CC BY 4.0.
Code review
Ivimey-Cook, E. R., et al. (2023). Implementing code review in the scientific workflow: Insights from ecology and evolutionary biology. Journal of Evolutionary Biology 36: 1347–1356. https://doi.org/10.1111/jeb.14230
The four Rs, how to write reviewable code, where code review fits at each stage of publication, and how to start a code club.
10.2 Guides to reproducible code
- Cooper, N. & Hsing, P.-Y. (2025). Guide to Reproducible Code (2nd edn). British Ecological Society. https://doi.org/10.5281/zenodo.16421733
- Abdill, R. J., Talarico, E. & Grieneisen, L. (2024). A how-to guide for code sharing in biology. PLOS Biology 22: e3002815. https://doi.org/10.1371/journal.pbio.3002815
- Filazzola, A. & Lortie, C. (2022). A call for clean code to effectively communicate science. Methods in Ecology and Evolution 13: 2119–2128. https://doi.org/10.1111/2041-210X.13961
- Sandve, G. K., Nekrutenko, A., Taylor, J. & Hovig, E. (2013). Ten Simple Rules for Reproducible Computational Research. PLOS Computational Biology 9: e1003285. https://doi.org/10.1371/journal.pcbi.1003285
- Hunter-Zinck, H. et al. (2021). Ten simple rules on writing clean and reliable open-source scientific software. PLOS Computational Biology 17: e1009481. https://doi.org/10.1371/journal.pcbi.1009481
- Sweigart, A. (2020). Beyond the Basic Stuff with Python: Best Practices for Writing Clean Code. No Starch Press. https://nostarch.com/beyond-basic-stuff-python
- Jiménez, R. C. et al. (2017). Four simple recommendations to encourage best practices in research software. F1000Research. https://doi.org/10.12688/f1000research.11407.1
- Patel, B., Soundarajan, S., Ménager, H. & Hu, Z. (2023). Making Biomedical Research Software FAIR: Actionable Step-by-step Guidelines with a User-support Tool. Scientific Data 10: 557. https://doi.org/10.1038/s41597-023-02463-x
Also useful, and cited in our code review paper (Ivimey-Cook et al. 2023): https://coderefinery.github.io/reproducible-research/ and Daniël Lakens’ chapter on computational reproducibility, https://lakens.github.io/statistical_inferences/14-computationalreproducibility.html
10.3 Code review literature
- Rokem, A. (2024). Ten simple rules for scientific code review. PLOS Computational Biology 20: e1012375. https://doi.org/10.1371/journal.pcbi.1012375
- Hillemann, F., Burant, J. B., Culina, A. & Vriend, S. J. G. (2025). Code review in practice: A checklist for computational reproducibility and collaborative research in ecology and evolution. EcoEvoRxiv. https://doi.org/10.32942/X26S6P
- Indriasari, T. D., Luxton-Reilly, A. & Denny, P. (2020). A review of peer code review in higher education. ACM Transactions on Computing Education 20: 1–25. https://doi.org/10.1145/3403935
- Fernández-Juricic, E. (2021). Why sharing data and code during peer review can enhance behavioral ecology research. Behavioral Ecology and Sociobiology 75: 103. https://doi.org/10.1007/s00265-021-03036-x
- Nakagawa, S. et al. (2023). Method reporting with initials for transparency (MeRIT) promotes more granularity and accountability for author contributions. Nature Communications 14: 1788. https://doi.org/10.1038/s41467-023-37039-1
10.4 FAIR and open-science principles
- Wilkinson, M. D. et al. (2016). The FAIR Guiding Principles for scientific data management and stewardship. Scientific Data 3: 160018. https://doi.org/10.1038/sdata.2016.18
- Barker, M. et al. (2022). Introducing the FAIR Principles for research software. Scientific Data 9: 622. https://doi.org/10.1038/s41597-022-01710-x
- Chue Hong, N. P. et al. (2022). FAIR Principles for Research Software (FAIR4RS Principles). Zenodo. https://doi.org/10.15497/RDA00068
- Lamprecht, A.-L. et al. (2020). Towards FAIR principles for research software. Data Science 3: 37–59. https://doi.org/10.3233/DS-190026
- GO FAIR’s plain-language summary: https://www.go-fair.org/fair-principles/
10.5 The evidence base
Use these if you need to persuade a co-author, a supervisor or an editor.
- Culina, A., van den Berg, I., Evans, S. & Sánchez-Tójar, A. (2020). Low availability of code in ecology: A call for urgent action. PLOS Biology 18: e3000763. https://doi.org/10.1371/journal.pbio.3000763
- Trisovic, A., Lau, M. K., Pasquier, T. & Crosas, M. (2022). A large-scale study on research code quality and execution. Scientific Data 9: 60. https://doi.org/10.1038/s41597-022-01143-6
- Kellner, K. F., Doser, J. W. & Belant, J. L. (2025). Functional R code is rare in species distribution and abundance papers. Ecology 106: e4475. https://doi.org/10.1002/ecy.4475
- Ivimey-Cook, E. R. et al. (2025). From policy to practice: Progress towards data- and code-sharing in ecology and evolution. Proceedings of the Royal Society B 292: 20251394. https://doi.org/10.1098/rspb.2025.1394
- Kambouris, S., Wilkinson, D. P., Smith, E. T. & Fidler, F. (2024). Computationally reproducing results from meta-analyses in ecology and evolutionary biology using shared code and data. PLOS ONE 19: e0300333. https://doi.org/10.1371/journal.pone.0300333
- Gomes, D. G. E. et al. (2022). Why don’t we share data and code? Perceived barriers and benefits to public archiving practices. Proceedings of the Royal Society B 289: 20221113. https://doi.org/10.1098/rspb.2022.1113
- Maitner, B. et al. (2024). Code sharing in ecology and evolution increases citation rates but remains uncommon. Ecology and Evolution 14: e70030. https://doi.org/10.1002/ece3.70030
- Vandewalle, P. (2012). Code Sharing Is Associated with Research Impact in Image Processing. Computing in Science & Engineering 14: 42–47. https://doi.org/10.1109/MCSE.2012.63
- McKiernan, E. C. et al. (2016). How open science helps researchers succeed. eLife 5: e16800. https://doi.org/10.7554/eLife.16800
- Jenkins, G. B. et al. (2023). Reproducibility in ecology and evolution: Minimum standards for data and code. Ecology and Evolution 13: e9961. https://doi.org/10.1002/ece3.9961
- Archmiller, A. A. et al. (2020). Computational reproducibility in The Wildlife Society’s flagship journals. The Journal of Wildlife Management 84: 1012–1017. https://doi.org/10.1002/jwmg.21855
- Hardwicke, T. E. et al. (2021). Analytic reproducibility in articles receiving open data badges at the journal Psychological Science: An observational study. Royal Society Open Science 8: 201494. https://doi.org/10.1098/rsos.201494
10.6 Tools
R
| Tool | What for |
|---|---|
here (Müller & Bryan 2020) |
Relative file paths; see Transferable |
renv (Ushey & Wickham 2023) |
Project-level package environments; replaces packrat. Beyond the scope of TADA. |
groundhog (Simonsohn & Gruson 2023) |
Load packages as they were on a given date. Beyond the scope of TADA. |
styler (Müller & Walthert 2020) |
Reformat code to a standard style (tidyverse, Google) |
testthat (Wickham 2011) |
Unit testing |
targets (Landau 2021) |
Pipeline management; reproducibility hashes for expensive steps |
workflowr (Blischak et al. 2019) |
Reproducible project scaffolding and websites |
codemeta (Boettiger 2017) |
Generate standard code metadata |
dataReporter (Petersen & Ekstrøm 2019) |
Document and screen data quality |
sessionInfo() |
Base R; the environment section of your README |
citation() |
Base R; package citations with version numbers |
Python
| Tool | What for |
|---|---|
pyprojroot (Chen 2023) |
Relative file paths; the here equivalent |
poetry (Eustace 2023) |
Dependency management and packaging. Beyond the scope of TADA. |
pipenv (Pipenv Maintainer Team 2023) |
Reproducible environments. Beyond the scope of TADA. |
pycodestyle (Rocholl 2022) |
PEP 8 style checking |
pytest (Okken 2022) |
Unit testing |
luigi (The Luigi Authors 2023) |
Pipeline management |
CodeMetaPy (van Gompel 2023) |
Code metadata |
cookiecutter (Feldroy 2022) |
Project templates |
setuptools |
Package and version information |
session_info (from the session-info package) |
The environment section of your README |
Environments & pipelines
Beyond the scope of TADA, but worth using if you have the time. These are the
three categories we left out of TADA’s scope: dependency and environment
managers (renv, groundhog, conda, poetry and pipenv; see the R and
Python tabs), containerisation and workflow managers (below).
| Tool | What for |
|---|---|
| Docker (Merkel 2014; Boettiger 2015) | Containerisation; a complete, portable software environment |
| Apptainer, formerly Singularity (Kurtzer et al. 2017) | Containerisation, common on HPC systems |
| Snakemake (Köster & Rahmann 2012) | Workflow management; defines step order and dependencies |
| Nextflow (Di Tommaso et al. 2017) | Workflow management |
A curated list of pipeline tools: https://github.com/pditommaso/awesome-pipeline
Choosing a licence
| Resource | For |
|---|---|
| https://choosealicense.com/ | Code licences: MIT, GPL, BSD, Apache |
| https://choosealicense.com/no-permission/ | What happens with no licence |
| https://creativecommons.org/chooser/ | Data licences: CC0, CC BY, CC BY-NC |
10.7 Repositories and archiving
| Service | Link |
|---|---|
| Zenodo | https://zenodo.org/ |
| Linking GitHub to Zenodo | https://help.zenodo.org/docs/profile/linking-accounts/ |
| Figshare | https://figshare.com/ |
| Dryad | https://datadryad.org/ |
| Software Heritage | https://www.softwareheritage.org/ |
| Open Science Framework | https://osf.io/ |
| Choosing a repository (Harvard Longwood Medical Area Research Data Management Working Group 2023) | https://doi.org/10.5281/zenodo.10651775 |
| RStudio projects: getting started | https://docs.posit.co/ide/user/ide/get-started/ |
10.8 Communities
- SORTEE, the Society for Open, Reliable, and Transparent Ecology and Evolutionary Biology. Runs code clubs for SORTEE members (SORTEE n.d.). https://www.sortee.org/
- Code Refinery, training in reproducible research practices. https://coderefinery.org/
Missing something that belongs here? See Contribute.