Preparing an R package for open-source contributions: An experience report on the World Wildlife Fund’s Forest Foresight

Deforestation (i.e., the removal or destruction of forests by humans), particularly illegal, is a major cause of ecological and environmental problems. To combat illegal deforestation, the World Wildlife Fund (WWF) has developed an open-source R package to predict deforestation around the world using machine learning. The package has been used by and customized to various countries, providing immense value for environmental protection. However, the package was implemented by domain experts without software engineering background, resulting in an unstructured development process, a monolithic codebase, and a lack of documentation on processes and code. Aiming to build an open-source community to improve and maintain the package, the WWF team decided to focus on enhancing the accessibility and attractiveness of the codebase for newcomers. Supporting this goal, we conducted an action-research-like project using Scrum to improve the code quality, tooling, testing, processes, and documentation while also establishing practices to sustain and build upon these improvements. In this article, we describe this project and share our insights into opening an R package to make it more accessible for external open-source contributors. Our insights include guidance on communicating design decisions to domain experts without a software engineering background and on how to train them in software engineering practices. Further insights highlight the specific challenges of working with R packages. Lastly, our work showcases the contributions that software engineering can make to support environmental protection and can guide future projects in this direction. • We improved adherence to software engineering practices for open source R project. • Domain experts’ lack of awareness of best practices limits outside contributions. • The R language prohibits accessible organization of project files for large projects. • Communicating and teaching practices is best done through interactive sessions.

Authors

Institutions

Publication Details

Journal
Journal of Systems and Software
Published
2025-08-29
DOI
https://doi.org/10.1016/j.jss.2025.112597
Primary Topic
Software Engineering Research
Type
article
Field-Weighted Citation Impact
0.00
Controls
|||
ALL TIME
JAN
FEB
MAR
APR
MAY
JUN
JUL
AUG
SEP
OCT
article

Preparing an R package for open-source contributions: An experience report on the World Wildlife Fund’s Forest Foresight

Amirhosein Bakhshi, Jacob Krüger, Hasrul Maruf, Maas van Apeldoorn et al.
Journal of Systems and Software
Software Engineering Research
article

Preparing an R package for open-source contributions: An experience report on the World Wildlife Fund’s Forest Foresight

Amirhosein Bakhshi, Jacob Krüger, Hasrul Maruf, Maas van Apeldoorn, Zillah Calle, Jonas van Duijvenbode, Ismay Wolff, Yanja Dajsuren
article en

Abstract

Deforestation (i.e., the removal or destruction of forests by humans), particularly illegal, is a major cause of ecological and environmental problems. To combat illegal deforestation, the World Wildlife Fund (WWF) has developed an open-source R package to predict deforestation around the world using machine learning. The package has been used by and customized to various countries, providing immense value for environmental protection. However, the package was implemented by domain experts without software engineering background, resulting in an unstructured development process, a monolithic codebase, and a lack of documentation on processes and code. Aiming to build an open-source community to improve and maintain the package, the WWF team decided to focus on enhancing the accessibility and attractiveness of the codebase for newcomers. Supporting this goal, we conducted an action-research-like project using Scrum to improve the code quality, tooling, testing, processes, and documentation while also establishing practices to sustain and build upon these improvements. In this article, we describe this project and share our insights into opening an R package to make it more accessible for external open-source contributors. Our insights include guidance on communicating design decisions to domain experts without a software engineering background and on how to train them in software engineering practices. Further insights highlight the specific challenges of working with R packages. Lastly, our work showcases the contributions that software engineering can make to support environmental protection and can guide future projects in this direction. • We improved adherence to software engineering practices for open source R project. • Domain experts’ lack of awareness of best practices limits outside contributions. • The R language prohibits accessible organization of project files for large projects. • Communicating and teaching practices is best done through interactive sessions.

Journal of Systems and SoftwareVol. 231
WWF Colombia (CO), Eindhoven University of Technology (NL)
Life in Land
Openalex Percentile: Top 66%
Software Engineering Research
AI Navigator

Ask Laika to Summarize, Analyze, and Connect papers live on the map.

Summarize Papers & Methodologies

Extract key findings, datasets, and comparative methods across publications.

Benchmark Rankings & Visual Analytics

Rank top research institutions, authors, funders, topics, and journals by Field-Weighted Citation Impact (FWCI) and paper volume with instant charts.

Connect Distant Disciplines

Bridge topological clusters on the map to find hidden collaborative intersections.