logo
Kurashizu Blogwhere ideas flow
  • Home
  • News
  • Blog
  • About
  • Home
  • News
  • Blog
  • About

© 2026 Kurashizu. All rights reserved.

Admin·New Post·Service Status
Powered by Cloudflare·30.10.26
← Back to news

Science Is Open Software

Original article
jepedersen.dk|142 points|51 comments|by jegp|Sep 19, 2026

Science Is Open Software

By Jens Egholm Pedersen | May 24, 2025 | ⏱️ 7 min read

TL;DR: I argue that in the modern era, the practice of science is fundamentally the same thing as creating open-source software.


The Misconception of "Tooling"

For as long as I can remember, I've been asked why software actually matters in a scientific context. Too often, it is viewed as a tedious time sink a mere hurdle to be cleared quickly in the pursuit of the "real" goals: results and academic publications.

However, we must insist on the scientific method, and in the digital age, that necessitates a commitment to open, reproducible software. While this perspective clashes with several current academic norms, it is the only way to ensure better science without driving researchers to the brink of insanity.

What is Science?

According to Wikipedia, science is defined as:

"A systematic discipline that builds and organises knowledge in the form of testable hypotheses and predictions about the universe."

When reviewing a paper, we must ask: Does this work provide predictions that are systematically organized and actually testable?

The Concept of "Inner Models"

In the book The Nature of Explanation, Kenneth James Williams Craik suggests that organisms navigate the world by maintaining "small-scale models" of reality and their own potential actions.

"If the organism carries a 'small-scale model' of external reality... it is able to try out various alternatives... and in every way to react in a much fuller, safer, and more competent manner."

The objective of science is to refine this inner model so that our predictions about the universe become more accurate. If a paper on arXiv fails to help the reader improve their predictive capabilities, it fails the test of being "science."

This is where computational reproducibility becomes vital: Software is the medium through which we encode and distribute these predictive models.

The Requirements of Scientific Validity

To meet the Wikipedia definition, results cannot simply be demonstrated; they must be:

  1. Systematic
  2. Testable

If a paper is overly dense or inaccessible, the insights might still exist, but the reader cannot internalize the idea, test it, and integrate it into their own world model.

Reproducibility ≠\neq= just duplicating a result. Reproducibility === the ability to take a scientific concept, embed it into your own model, modify it, and either expand upon it or discard it based on its predictive power.

The Analogy of the Hidden Equation

Consider this thought experiment: replace the term software model with mathematical model.

ScenarioAcceptanceReason
Physics paper says "Our equations predict XXX" but hides the math.❌ RejectedImpossible to verify or build upon.
Computational paper says "Our code predicts XXX" but hides the software.❌ Should be RejectedImpossible to verify or build upon.

If we hide the methods, we stall progress. Many careers and fields have been hindered by buggy_code.py. Whether it is COVID-19 projections, search algorithms, or lab protocols, we rely on a chain of software dependencies. If we don't verify the implementation, the results are fragile.

The reality is simple: Scientific Results=f(Software)\text{Scientific Results} = f(\text{Software})Scientific Results=f(Software).

Software bugs have already led to numerous retractions (see examples [here], [here], and [here]). While we must trust others to some extent, we need a framework for that trust.

The Two Pillars of Scientific Software

To be useful, software must be:

  • Reproducible: It must be executable and modifiable.
  • Reliable: The results must be consistently trustworthy.

Modifiability allows us to retrofit code (similar to how we use Hugging Face models) to iterate and improve. Reliability ensures we are building on a foundation of knowledge rather than "flaky" results.

A Vision for the Future of Science

If we treat open-source software as the "scientific method in simulation," the future of research looks radically different:

  • Interactive Papers: You read a claim that a drug reduces symptoms by 30%, click a link, and the analysis runs instantly in your browser via a reproducible container.
  • Global Collaboration: Climate models are not siloed in one lab. If a researcher in Kenya finds a bug in atmospheric turbulence calculations, the fix is pushed via a git commit and propagates globally.
  • Standing on Shoulders: We don't start from scratch; we use code that is not just "readable" but runnable.
  • Public Trust: When economic or medical models are transparent and auditable, public confidence increases.

Example of a Reproducible Environment

Instead of a PDF, a researcher might provide a configuration like this:

environment:
  python_version: "3.10"
  dependencies:
    - numpy==1.23.5
    - pandas==1.5.3
    - scipy==1.9.3
  container: "docker://science-image:v1.2"
  data_hash: "sha256:a1b2c3d4..."

By making the models themselves the center of the conversation—rather than just the conclusions—we transform science into a living, evolving piece of open software.

Science≈Open Source Software\text{Science} \approx \text{Open Source Software}Science≈Open Source Software