eHealth Africa developers are active in a number of open source communities. Indeed, many of eHA’s solutions have incorporated open source software such as Open Data Kit (ODK), CKAN, OpenHIE, DHIS2, and Humanitarian OpenStreetMap (HOT). We are just weeks away from giving back to the community in the form of two new projects - Aether and Gather. We’re excited to support others who are developing solutions for the global good.
We interviewed the team behind eHA’s Aether to discuss the reasons why they created an open source development platform for data curation, exchange, and publication.
Aether is being developed by a multi-country team working in three different continents, so it was a challenge to sit down with them all in one place. Still, we talked with four people key to its development and asked them what exactly Aether is and why eHA decided to create it. Our conversation included the Director of eHA’s Global Health Informatics Dave Henry, Aether Product Manager Doug Moran, Systems Architect Shawn Sarwar, and Technical Team Lead Adam Butler.
Why is eHA developing Aether?
During our discussion, Shawn Sarwar explained that throughout eHA’s years of experience developing ehealth solutions we faced recurring challenges when scaling the impact of our products within the communities we serve.
Although eHA develops great tailored solutions for specific problems and customers, we were not always leveraging possible synergies between different projects. Shawn gave three reasons why solutions are typically been developed as stand alone projects:
Customization can create maintenance challenges. When multiple customers use a particular solution, a certain level of customization is required. The various codebases can drift apart, making it difficult to apply bug and security fixes across all of them.
There isn’t always a standard set of components across projects. One team may know one technical stack, while another could have a different preference. This leads to the siloing of potentially useful components according to people’s comfort and familiarity.
Almost every project needs to integrate with one or more external systems. Because of this requirement, teams normally plan to write their own integration to exchange data between different applications.
As a consequence, we became very good at creating variations of common solutions. But instead of reinventing the wheel each time, what if we could capitalize on a framework for the development of ehealth solutions? This, Dave Henry explained, is what drove eHA to develop Aether.
He explained that these challenges are not unique to eHA; they point to a broader issue that slows development and deployment of many healthcare systems. Information and Communication Technology (ICT) solutions for global public health use cases rely heavily on open source software, but while individual open source applications have been put to good use, the ability to integrate them into sophisticated solutions has been limited to countries with sufficient funding and visionary, determined leadership. Dave explained that even the most successful solutions leave behind a legacy of isolated data silos. Last September, eHA decided to wrangle these problems by setting twin goals:
Simplify the integration of popular ehealth applications.
Provide a consistent way for data to flow from these applications directly to where it needs to go.
Today the Aether team is pleased to announce the results of this effort: the Aether platform and it’s first companion solution Gather.
What is Aether ?
More precisely, it is an integrated set of tools and services that allows developers to connect to data sources, interpret data structures, and map attributes into a normalized set of entities defined by a formal schema. Aether flows the resulting data in real-time to one or more downstream destinations. The publication process is open and modular – the destinations receive data based on the schema (a de facto contract) and are completely insulated from the source systems. Data can be delivered concurrently to multiple destinations.
In this way, Aether facilitates the flow of data between data-producing and data-consuming applications, enhances data security and privacy, and accelerates the transmission of data between organizations. Basically, Aether allows for faster and more accurate data-driven decision making that helps save lives.
Aether helps organizations exchange health data faster and easier, but most of all it improves the productivity of developers that create ehealth solutions. According to Doug Moran, Aether is a product built by developers for developers to facilitate their work and free them to focus on the actual solution rather than infrastructure. Solutions become easier to deploy, maintain, and upgrade than traditional one-off projects built from scratch. By building on a common foundation, the software development process becomes well defined, predictable, and repeatable.
Basically, Aether is a framework of best practices for ehealth systems design. The Aether developers have done much of the dirty grunt work so that the project teams can do the exciting and heroic stuff that solves real problems for real people.
And what about Gather ?
Dave also talked to us about Gather, the first solution and use case built on the Aether platform. Gather leverages Aether and 3rd-party open source software to collect and distribute data collected during large scale field surveys, receives survey data from forms submitted via Open Data Kit (ODK), and ingests it into an Aether pipeline for processing and distribution. The Gather solution includes the ability to flow data into ElasticSearch / Kibana as well as the CKAN Open Data Portal. The Aether platform services are used to package and operate the ODK components, the Gather user interface, the Aether core modules and the Aether publishers. Gather is just the first – but arguably the most universal – use case that eHA will address with Aether.
Technical Team Lead Adam Butler elaborated on the implementation of Gather across the countries where eHA’s operates. He explained that in Sierra Leone, the CHAMPS (Child Health and Mortality Prevention Surveillance) network uses Gather to collect data as part of an initiative to identify and prevent child death. In Nigeria, the GRID (Geospatial Reference Information Data) project uses Gather to collect spatial reference data and other points of interest such as health facilities, schools, markets, and post offices to create a geo-database that the government uses for data-driven decision making. In the Democratic Republic of the Congo, the DRC Microcensus project used Gather to conduct a microcensus in the region of Kinshasa and Bandundu in order to predict how many people live in each settlement and estimate the total population for DRC, information that is playing a vital role in the current Ebola outbreak.
What is eHA’s vision for Aether ?
According to the Aether team, eHealth Africa’s goal is to establish and support a vibrant global community around Aether and Aether-enabled solutions. Aether serves three distinct purposes:
A platform for integrating, distributing, and operating sophisticated solutions for specific ehealth industry use cases.
A facility for organizations that are taking their first steps into data governance and (internal) application interoperability.
A controlled “on ramp” for organizations that engage in formal data sharing using international standards.
Aether will be launched as open source software this summer. Stay tuned for the release announcement!