Info: Zenodo’s user support line is staffed on regular business days between Dec 23 and Jan 5. Response times may be slightly longer than normal.

Published October 22, 2024 | Version v1
Presentation Open

Developing better open research software by using modern software templates and conformity check tools

  • 1. University of Twente
  • 2. University of Twente, Faculty of Geo-Information Science and Earth Observation
  • 3. ROR icon Delft University of Technology
  • 4. ROR icon Utrecht University

Description

Following the best practices for research software development is fundamental for modern, open, and sustainable research software. However, following rapidly changing research software development best practices presents significant challenges.

Researchers and research software engineers must constantly update their skills and knowledge to keep pace with evolving standards. Additionally, integrating new practices into research workflows often requires substantial effort. Modern and up-to-date research software templates to initiate research software projects and tools to check conformity with best practices on research software development throughout the development process can significantly lower the barries and help to develop research code that adheres to best practices, fostering consistency, quality, and reproducibility across projects. These tools can also help to reduce errors, enhance software longevity and usability, and facilitate collaboration among researchers by automating the enforcement of standards and promoting maintainable code.

In this session, we introduce such tools, a research software template for Python and a research software conformity checking tool for best practices that were recently developed as part of the TDCC NES Best Practices for Sustainable Software project. Building upon lessons learned from past initiatives and following recent best practices closely, the tools aim to facilitate and support modern research software develolopment. During the session, participants are introduced to the basics of software templates and learn how to use the developed template to start a new research software project in Python. The features of the template are explained in detail and demonstrated with a simple research code example. Following this, the principles of conformity checking are described, and the developed conformity checking tool is introduced. Participants learn how to use the tool to check the conformity of existing research software projects, identify potential issues, and receive guidance on how to resolve them. Finally, we have an open discussion about potential use cases for the tools and explore how they can be further developed by the community collaboratively.

Files

20241022-OSF24-MetaTemplate-CodeScanner-RESULTS.pdf

Files (2.0 MB)