Open Source Software During a Global Crisis
The global pandemic has taken almost all governments by surprise, causing drastic safety measures to be put in place around the globe, with some people even calling these measures “draconian”.
From my point of view, a lot of these measures have come from sheer panic and also a lack of understanding of how to deal with such situations, but not only that, I feel there has been a complete lack of technical knowledge backing these decisions, furthermore whenever there has been, it has generally been in a way that inherently creates distrust.
I am a UK resident, so this article will of course primarily focus on how the UK government has approached its use of technology during the pandemic, but I will point out other examples from around the globe.
Why open source?
If you’re new here, I’ll TLDR what open source is, it’s simply software that is developed within the open and released with a license which generally allows others to reuse/study/change and redistribute the code. There are many studies/reasons as to why open source works, I shall leave this as an exercise to the reader to go and explore more, but I will try to highlight reasons I feel it helps during a global pandemic.
Firstly the cost of open source is generally lower, due to the lack of vendor support/development, however there are generally still costs involved as you may need to customise the software or provide training on how to use the software, but either way you would still have to pay these costs regardless of if the software was open or closed source. Plus open source is generally built on top of other open source software, so less investment or time is required to get off the ground, even closed source software will use open source software to solve specific problems.
Secondly community, open source projects can quite rapidly build into a community of different interested parties, these can lead to a force multiplier when it comes to effort, as you attract more knowledge/talent, increase peer review and mitigate problems faster, there is also generally more eyes on the code, so less bugs occur during development.
Finally ownership, open source code generally does not have an “owner”, there may be a community that controls how the development occurs, to ensure the software functions, but there is never someone who dictates how the software should be used, this is generally handled via many different license files that the end users can also see.
Technology in a pandemic
As we have seen, various levels of technological innovation has been deployed across the globe to help deal with the Covid-19 pandemic, ranging from robotics to mobile apps. But during times like these, people are generally scared and inherently become suspicious of new things imposed upon them by governments/large corporations, generally for good reasons, along side that governments are also reluctant to invest in radical technology as the costs can be quite large.
So as discussed earlier, the idea of open source may seem like an attractive choice for both users/governments, especially during a global pandemic, when drastic changes are bound to happen, as users may have more trust in the technology or can be better informed about the software by people they trust and governments have to spend less money overall.
Contact tracing
An example which seems obvious to compare is the contact tracing apps, which many governments have decided to deploy in order to try and slow down the spread of Covid-19.
Covid-19 is widely known to spread via person-person contact, with large concentrations of the virus being found in the nose/throat. So social distancing is something that governments have advised people to employ, trying to ensure that people are not exposed to people who may be carriers of the virus.
Contact tracing is a technical solution to the problem of tracking individuals who may have accidentally come into contact with someone who was a carrier of the virus, but did not know until after the contact occured.
Technical details
If that fantastic image wasn’t enough, then we should discuss what the technical challenges are when building an app that can trace millions of people in a secure and safe manner, with little disruption to daily life.
Contact tracing first needs a device that can communicate with other devices in order to keep track of who has contacted who, the obvious choice here is to use people’s mobile phones.
Once a communication device is established, we need a way for those devices to communicate all day without revealing the identity of the specific user. This involves two other technologies, Bluetooth-LE, which is a low energy information transfer protocol, which can run on mobile devices for multiple hours without impacting too much on the performance of the user’s device, secondly we need cryptography, which is way of communicating information in a secure manner between devices.
Finally we need a way for users to alert other users if they have tested positive for the virus and allow that information to propagate through the network anonymously, so other people who may have been in contact can know to self isolate, to slow down the spread of the virus.
Open Source Vs Closed Source
A case study of how open source was leveraged to produce a track and trace system compared with a privately developed closed source system, are the two system deployed by Germany and the UK respectively.
The UK government took the traditional approach of building something from scratch, this is often a common reaction by large governing bodies as they want to be seen to be leading the way during difficult times, whereas Germany decided to use open source technologies from the beggining.
Eventually the UK governments approached failed and they eventually decided to follow the same model as Germany and develop an app based on open source technologies.
So what did germany achieve by choosing open source from the start? Well firstly the UK contract tracing app has become the mockery of the financial costs associated with the pandemic, with people reporting wildley different figures on how much the first and second apps cost to develop, along with who exactly developed it, even now the open source repository does not offer a clean view of who contributed and where from. Whereas Germany had clear mandate from the start, clearly listing who has worked on the application, along with the git history.
But more importantly it gained the trust of its users by leveraging the open source development model, allowing trusted technologists to reuse/study/change/audit the application, increasing the trust of the general population, along with the speed/agility of open source development.
The ultimate proof as to which approach worked best is to see the number of users who deciced to install the applications once they were developed, in the UK just over 1 million people have downloaded the NHS track and trace application, whereas in Germany over 15 million people have downloaded the Coronawarnapp!
Conclusion
This is just a small example of how open source technology has demonstrated its strengths to the world, you don’t have to look far to see how more and more organisations and governments are realising how much can be achieved by using open source technologies and methodologies.
Technology can be a force for good and positive change, but the fundamental development methods and technologies used must be carefuly selected and curated, that will be the only way to effectively leverage technology in the future for the greater good.
Thanks for reading.
** All images licensed under the creative commons