Reusable code in COVID-19 apps

European COVID-19 tracing apps and reusable source code

Published on: 10/11/2020
Last update: 08/05/2021
News

18 of 44 European countries have an open source COVID-19 tracing app, but not with much reuse of code. This complicates the communication between national backends, however, a gateway solution has been made.

Apps on a mobile phone

Open source allows nation states to reuse source codes for the COVID-19 tracing apps, which have become an important means of detecting and potentially preventing the spread of the virus. The World Health Organisation (WHO) published a guidance report in May 2020 titled 'Ethical considerations to guide the use of digital proximity tracking technologies for COVID-19 contact tracing'. Here WHO strongly encouraged open source licences: 'There should be full transparency about how the applications and application programming interfaces (APIs) operate, and publication of open source and open access codes.'

The recommendations did not end there. As one of its suggested principles, the report states that data collection, use and the purpose of this should be transparent.

 

Reusable source code only reused twice in Europe

In Europe, only two countries seem to have built upon other countries code for the COVID-19 tracing apps.

  • Belgium’s tracing app is called Coronalert. In the README on the app’s GitHub page, it says that the source code is a fork of the German CORONA-WARN-APP.
  • The Hungarian README states that the tracing app is built upon an IT-solution, which previously has been used in North Macedonia, this is written on the project site on GitHub.

 

The potential for reuse lies in the licences

European countries are rather reluctant to reuse. Even licences. The most popular ones among the European countries are MIT and Apache, according to the various GitHub pages, which the author has search within. Both MIT and Apache are permissive licenses with few restrictions. This gives them reuse potential.

As shown below, Iceland has written some reasons for open source on their README on GitHub (they use MIT license):

  • We want to encourage and facilitate cooperation between nations through this pandemic.
  • We want more contributors to make the app better. It’s been a volunteer project from the beginning, so we have limited time to work on it.
  • We want total transparency in how the app works precisely.

They add: 'Please help us improve the app for all.'

 

Communication across European borders

Most European tracing apps exist for both Android and iOS. The tracking apps use an Exposure Notifications API from Google and Apple. But a direct line to Google and Apple is not enough. Although the proximity tracing mechanisms are compatible, the national backends can’t communicate. 'This is unfortunate, as Europeans commute and travel all over the continent; interoperability of the national backends is a must', states the EU eHealth Network in a report from June 2020 Therefore, they suggest a Federation Gateway Service, for which they have published an architectural proposal. The gateway is developed by the German SAP og T-Systems. And after a successful tesing period, the Federation Gateway Service is now open.