scikit-package -- software packaging standards and roadmap for sharing reproducible scientific software

๐Ÿ“… 2025-07-04
๐Ÿ“ˆ Citations: 0
โœจ Influential: 0
๐Ÿ“„ PDF

career value

174K/year
๐Ÿค– AI Summary
Scientific software often suffers from poor reproducibility and low sharing rates, primarily because researchers lack formal software engineering trainingโ€”leading to version chaos, uncontrolled code quality, and cumbersome release processes. To address this, scikit-package introduces a progressive software engineering roadmap tailored for domain scientists. It provides standardized packaging tutorials, automated workflow templates (covering build systems, CI/CD pipelines, documentation generation, and package management), and community-maintained pedagogical resources. Its key innovation lies in adapting professional software engineering practices to the cognitive load of non-specialist programmers, enabling systematic progression from script-based functions to production-ready, open-source package releases. Empirical evaluation demonstrates that scikit-package significantly improves the reproducibility and maintainability of scientific code, enhances community sharing efficiency, and lowers barriers to standardized scientific software publication.

Technology Category

Application Category

๐Ÿ“ Abstract
Scientific advancement relies on the ability to share and reproduce results. When data analysis or calculations are carried out using software written by scientists there are special challenges around code versions, quality and code sharing. scikit-package provides a roadmap to facilitate code reuse and sharing with minimal effort through tutorials coupled with automated and centralized reusable workflows. The goal of the project is to provide pedagogical and practical tools for scientists who are not professionally trained software engineers to write more reusable and maintainable software code. Code reuse can occur at multiple levels of complexity-from turning a code block into a function within a single script, to publishing a publicly installable, fully tested, and documented software package scikit-package provides a community maintained set of tools, and a roadmap, to help scientists bring their software higher levels of reproducibility and shareability.
Problem

Research questions and friction points this paper is trying to address.

Enhancing reproducibility of scientific software through standardized packaging
Simplifying code sharing for non-expert scientists via tutorials and workflows
Promoting reusable and maintainable code at varying complexity levels
Innovation

Methods, ideas, or system contributions that make the work stand out.

Automated centralized reusable workflows for sharing
Pedagogical tools for non-engineer scientists
Community-maintained tools for reproducibility
๐Ÿ”Ž Similar Papers
2024-08-30Scientific DataCitations: 0
S
Sangjoon Lee
Department of Applied Physics and Applied Mathematics, Columbia University, New York, NY 10025, USA
C
Caden Myers
Department of Applied Physics and Applied Mathematics, Columbia University, New York, NY 10025, USA
A
Andrew Yang
Department of Applied Physics and Applied Mathematics, Columbia University, New York, NY 10025, USA
T
Tieqiong Zhang
Department of Applied Physics and Applied Mathematics, Columbia University, New York, NY 10025, USA
Simon J. L. Billinge
Simon J. L. Billinge
Department of Applied Physics and Applied Mathematics, Columbia University, New York, NY 10025, USA