This is an idea i've had for many years - but if there was ever a time to build it - now was the time. After posting a prototype on LinkedIn which ended up trending for #machinelearning, i was flooded with support from Doctors, Physicians and Data Scientists mainly in Canada and the USA, who were clearly desperate for this tool and the data captured. After several video calls - their main reasoning was that the data they are being provided by their "official" lines is simply not good enough. They need more location-based data to help focus their efforts and resources to where it is needed. I knew that this was something i needed to build.
What it does
Ground Truth is a suite of production-ready apps and services (an open API, an iOS app, an Android app and a progressive responsive web app) that aims to anonymously crowd-source symptom data into a central geospatial api-based data source for the benefit of others. The main public-facing product is a heat map, which shows everyone the results of everyones efforts so far and statistics. The data captured is free for anyone to read and use in their research or systems, and can be used by anyone to power their own systems. Such examples might include:
- Using computer programming or AI / ML models to map and predict the movement of disease across the globe
- Using the platform as an early warning system in developing countries
- Essential supplies / logistical planning by using the system to find out where the most help might be needed
Ground Truth is a data tool, and is not interested in capturing any possibly personally identifying information.
How I built it
The Ground Truth platform consists of three nodes:
Built on Google's Firebase platform, the API is built using a microservice architecture and the data is stored in two locations; Firestore (a NoSQL document database) and Algolia (a NoSQL document database with advanced querying and geospatial capability). The data is the most important asset of this system - and deserves world class providers, redundancy and capability. This in turn is exposed via the API for the benefit of others.
Built on Google's Firebase platform - the web app is built using React, Google Maps, and Material UI. All the data is read directly from the API as this is an API-first service, this approach will always provide consistency in data which is critically important for this kind of tool.
iOS / Android App
Built using Dart and Flutter - an open source framework for cross-platform development. This allows the platform to complete the spectrum and cast the widest net over the greatest amount of users to crowd-source symptom data. The deployment of an app also allows Ground Truth to access phone-specific features which can greatly improve the report rate via notifications and other means.
Challenges I ran into
The biggest issue i ran into was deploying the iOS and Android app to their respective app stores. After many emails and a phone call with Apple, it has been established that for both platforms - i cannot release the app without institutional backing. Every hour of every day i am pursuing contacts and connections in an attempt to try and find institutional backing. Also - no-one wanted to join my team.
Accomplishments that I'm proud of
Planet-scale by design
This is a massively redundant, infinitely scalable tool to collect and distribute data for the advancement and protection of biological life. It's designed to scale globally.
Already generating institutional interest
As word of the tool has started to spread, i've started to receive messages and enquiries from individuals who work with governments and are interested in using the tool due to it's open, free-to-use platform and geospatial capabilities to help lower technical barriers in their country.
Layered information architecture design - a life beyond the Coronavirus
This tool was intentionally designed to have a life beyond the Coronavirus outbreak. The information architecture research resulted in data being captured in "layers" - allowing data to be overlaid on top of each other to cater to various scenarios that consumers of the data may wish to seek.
What I learned
With this sort of data, there can be a lot of red tape around your ambitions, and it takes a lot of explaining for people to realise that this isn't a tool to harvest personal data - which appears to be considered normal. Data also needs to be GDPR and HIPAA compliant.
What's next for Ground Truth
- Further development of the API to provide more powerful and better geospatial results to those that need it.
- Institutional backing and support, which will allow us to get feedback on what data is needed and also gives us the ability and support to release this via app stores.
- Further development of the consumer offering to provide services back to the user for their contributions, such as notifications and information.
Try It out
algolia, firebase, firestore, google-maps, microservices, node.js, react