manifesto

Code is Science - a manifesto for anyone who deals with code in a scientific scenario

View the Project on GitHub codeisscience/manifesto

Code is Science Manifesto

We agree that scientific code needs to be treated as a primary research output.

Preamble

Code is science. Historically, the work of scientists has been reviewed by their peers to validate it before being published. In modern times, computer code forms part of scientific analysis, but it is rarely shared or reviewed.

This manifesto is for anyone who deals with code in a scientific setting, including publishers, researchers, research software engineers, and administrators.

Manifesto Principles

Open over closed

Ideally scientific code should be released by the time of publication, under an open source licence, such that anyone may download, review, re-use and expand upon it.

Incorrect code results in incorrect science

Published code should be peer reviewed. Ensure that at least one reviewer understands code well enough to evaluate it critically, as well as domain experts who can comment on the specific scientific area.

Code for the future

Follow good practices from the start of the project; don’t build up technical debts that are hard to fix later. This generally means automated testing, writing documentation, instructions on how to run and maintain your code, and following modern development practices.

Availability over perfection

You don’t have to be a computer scientist or professional software developer to write code, and your code doesn’t have to be perfect in order to be published. If code produces paper-ready results, the code too is paper-ready.

There is always room to improve your skills — some intensive training courses such as Software Carpentry only take a day or two.

When reviewing code be nice and provide constructive criticism. It is important to recognise that people make mistakes in good faith.

Code deserves credit

Software should be cited and acknowledged as scientific output. This means you should cite your sources as well as ask to be cited yourself.

Background