Our intention

Mid January we saw the pictures of the outbreak of the new Corona-19 virus in Wuhan in the TV. It was somehow shocking how quick the virus spread in a so short time. And suddenly we had the first infection in Germany. It was January 27th when a group of employees at Webasto, Starnberg became the first Corona-19 infected people in Germany. We all thought that this would perhaps last for 2 weeks and it would be over quickly. But after a football game in Milano on February 19th it took only 4 days until Italy reported the first 39 cases in the north of Italy. In the meantime, there was a lockdown in Wuhan and we thought that would never happen in Europe. Well it happened on March 8th for 13 provinces in the north of Italy and many people showed symptoms of SARS-CoV-2 of whixh many died. At that time we filled the daily number of new infections from the newspaper into an Excel sheet manually and added some reports on in showing the exponential growth. There is a nice visualization of an exponential growth published in the Washington Post on March 14th. Early April the European Centre for Disease Prevention and Control, short ECDC, started to publish the numbers of all countries in form of a JSON file that is updated every day.

So we came to the idea to write a Python script to download the file from the ECDC servers automatically every day and to create plots to visualize the outbreak. This was done in Jupyter Notebook that runs in a browser using data located on the local host. See an example of the output of the Jupyter Notebook here, or follow the series of posts on how to install it here.
After a while we thought that it would be a good idea to write a small REST API to store the data on a server. You can read about it here. To test the REST API we also wrote a CSharp application that runs under Windows. The download of this as a Windows Setup is available on this side too. That’s by the way the only thing that we developed especially for Windows while we do the main parts on our MacBooks. On this website you will also find a very simple interactive page were you can get a visualisation for the data of your selected countries, follow this link and fill in the comma separated list of GeoIDs of the countries you want to look at after clicking the Try it out button. E.g. by typing DE,UK,IT,ES,FR in the country field. The source code for all of this including the C# application is available on GitHub.

Next step was to use a Raspberry Pi model 3 as the server for the REST API. But as we were not sure about the final platform, we used Docker for this. The documentation on how to prepare the Pi and to make use of Docker is also available here on this side.

Once we had that we switched to an Odroid XU4 embedded system as this is more powerful as a Raspberry Pi model 3. Having this running we also created a private repository on GitHub that is using self hosted GitHub action runners, a functionality that was introduced by GitHub in June 2020. You are using it right now. There are a lot of interesting parts in this project that we don’t want to share, so that the repository is not available for public.

So beside the interest in Covid-19 and the mathematics behind a pandemic, the interest in programming and technology is what is driving us in this project.