codefair codefair

FAIR Software

What is a research software?

The commonly accepted definition of research software is “Any software created during the research process  or for a research purpose”. It can come in many format and could be developed for different applications such as artificial intelligence (AI)/machine learning (ML) models with Python, data visualization tools with Jupyter notebook, or data analysis code with R.

What does making a research software FAIR means?

The FAIR (Findable, Accessible, Interoperable, Reusable) Principles for Research Software (FAIR4RS Principles) are a set of high-level instructions established by the research software community to make software reusable. Making research software FAIR means complying with each of the 17 FAIR principles.

Why should you make your research software FAIR?

Making software reusable is critical for many reason including to:

  • Enable reproducible, transparent research
  • Prevent duplicate effort
  • Increase the pace of scientific discoveries and innovations

In addition to promoting software development practices, making software FAIR can also benefit you personally:

  1. Get recognition when your software is reused through proper citation
  2. Increase collaboration opportunities
  3. Position yourself for more funding opportunities as funding agencies such as NIH and NSF are progressively requiring funded projects to make their software FAIR

What are the challenges of making software FAIR?

The FAIR4RS Principles, by design, are intended to provide a high-level framework for making software reusable and do not provide clear actionable instructions. Therefore, making software FAIR requires an in-depth understanding of each of the FAIR4RS Principles, and finding out how to practically comply with them.

Solution 1: FAIR-BioRS guidelines

To fill this gap, we established the FAIR Biomedical Research Software (FAIR-BioRS) guideline, which are clear, actionable, and step-by-step guidelines for making biomedical research software FAIR.

Solution 2: codefair

While these guidelines are designed to be easy to follow, they can still be time consuming and difficult to implement (we experienced this firsthand). This is why we are developing codefair, so that making your software FAIR is seamless.