HomeGGIR adopts Apache 2.0 licence

GGIR adopts Apache 2.0 licence

Sunday,  June 18, 2023

Since its inception in 2012/2013, R package GGIR has been available with an LGPL software license. The LGPL license has allowed for re-use of GGIR as a software library in both commercial and academic settings. The move to the Apache 2.0 license will make the GGIR source code even more reusable.

Why do we need an Open Source Software license?

An Open Source Software (OSS) license protects contributors and users as it clarifies the conditions under which software is shared. Without a license, there is no permission to use the software.

Why a standard Open Source Software license?

The use of standard OSS licenses is strongly encouraged by the Open Source community as it eases re-use of code. A full list of approved licenses can be found here. There are two main standard license categories:

  1. Permissive licenses like MIT, BSD and Apache allow for a high level of freedom to re-use code.
  2. Copyleft licenses like GPL and LGPL are more restrictive about combining code with external code. For example, you cannot re-use copyleft licensed code in a closed software or inside permissively licensed software.

Why enable re-use of parts of the code?

Open Source Software (OSS) requires an ongoing maintenance and user support effort. If we would develop similar software tools in every new project it will become impossible to maintain all those tools. Unfortunately, this is a common scenario in research projects where software is typically project specific, e.g. a PhD-studentship, and no longer maintained after the project ends. When not effectively re-used and maintained, this leads to a waste of time and funding as someone else will then have to develop similar functionality for the next project. Therefore, the possibility to combine and re-use existing software code is critical for the sustainability of OSS. A permissive license such as Apache 2.0 provides least obstacles to this.

Why not restrict the license to academic use only?

Some may argue that all code developed in or for academia should be restricted to academic use only, via a custom academic-use-only license.

To me an academic-use only license seems inefficient and unfair for use with GGIR:

  1. More users, means more people to identify, report and help fix problems. The more restrictive the user community the fewer opportunity there is to sustain the software as a community.
  2. A custom academic-use-only license would introduce an unlevel playing field in relation to permissively OSS Licensed software projects as the first one can benefit from the second but not the other way around.
  3. Many Open Source software tools are developed and maintained with the help of for-profit businesses. For example, my own PhD studentship in Cambridge (2008-2012) was co-funded by industry and resulted in various algorithms and insights that have benefited the research community via their implementation in the GGIR package. Further, my commercial freelance work allows me to maintain and keep improving GGIR.
  4. Industry has played an enormous role in funding and sustaining the transition to raw data accelerometry in research. It would seem unfair to allow academic groups to benefit from all that work but not to invest back in the very same OSS ecosystem co-sustained by industry.
  5. Industry also pays the taxes from which most of academic research is paid, by which it is unclear why industry should not be allowed to benefit from those tax payments. Open Source Research software are like the public roads: Paid collectively and used collectively.

Why this blog post?

The source code for several large software projects in the physical activity and sleep research community is not shared with a standard OSS license or not shared at all. As a result, GGIR’s license is not self-evident in this field of work. With this blog post I hope to create awareness about the value the GGIR license choice offers. This value already existed with the LGPL license but has become even larger with the Apache 2.0 license.

To change a software license, one needs consent from the intellectual property (IP) holders to the software. GGIR has benefited from numerous IP holders over the years. In recent months I emailed all major IP holders for their permission to change the license. The IP holders that replied where happy for me to implement the license update. So, I decided to go ahead with it. Nevertheless, by publishing this blog post I would like to raise attention to the new license and invite any IP holder with questions or concerns to contact me. The license change is effective as of GGIR release 2.9-4 (available on GitHub only), and will be part of the 2.10-0 CRAN release later this summer.

GGIR adopts Apache 2.0 licence