Robust and nimble scientific workflows, using SpaDES

Authors

Eliot McIntire

Ceres Barros

Published

July 3, 2024

Preface

This book is a work in progress. Please visit this again as chapters are being added and modified.

The approaches presented here use the SpaDES family of packages and associated packages, like reproducible and Require, that we have developed to face a variety of issues that we experienced during our own journeys as modellers and, more generally, scientists.

Many of these issues we faced because most of us were ecologists by training (not computer scientists, not engineers, etc.), who lacked a strong programming foundation. So, we expect many who have other backgrounds and maybe very strong programming skills to find this set of solutions foreign and perhaps unnecessary, limited, or over-complicated for many applications outside the realm of ecological sciences. We certainly don’t expect NASA scientists to overhaul their own workflows and follow ours – but feel free too and send us your feedback!

This book is therefore focused on the many ways that models and data, including the data generated through models, can be used for decision making, reproducibility of publications, and reused across different applications and modelling contexts, etc. By working towards a set of standards for our data and modeling workflows, our science can become more nimble. We can thus pivot and update as issues come up.

We hope that many ecologists and those in related sciences (e.g. forestry, wildlife management, etc.), academics or practitioners, can appreciate the value of aligning their work with the R3T1, PERFICT2 and nimbleness principles and find these solutions useful. Mostly we hope that those that work with ecosystems can embrace these tools to work towards expanding the abilities of the community to become robust to any scrutiny we face.

Acknowledgements

We thank the various contributors, SpaDES developers and SpaDES users that continue to make the open-source ecosystem of SpaDES modules grow.

We also thank the Quarto team for their great work.


  1. Repeatability, Reproducibility, Reusability and Transparency↩︎

  2. Predict regularly from models that are Evaluated, Reusable, Freely accessible, and Interoperable, and that are part of Continuous workflows that are Tested regularly (McIntire et al. 2022).↩︎