Tech - March 21, 2019

Riveting Introduction to Flake8

Recently, I was learning about tools that make me a better Python developer. Having previously had the mindset that having a strong enough skill-set would reduce your chances of having linting issues within your code, I was in shock to realize that other factors were in play too. At the time, I had just heard

Read More

Tech - December 17, 2018

Why we are moving away from Om (and how we decided on our new front-end tech stack)

We recently evaluated the future of our front-end stack. The changes we decided on did not come easy, but we figured it out and wrote this article to walk you through the factors influencing our decision — and explore the directions we could have gone. Our hope is you can benefit from the research we

Read More

Press - November 03, 2018

Presenting on Machine Learning for Healthcare at the Royal Academy of Engineers

This past week we were in Vietnam for the Royal Academy of Engineers Frontiers of Development symposium, which is brought together engineering leaders in academia and industry to solve global development issues. I presented on ways to re-think how we can utilize machine learning and engineering in low and middle income countries to create more

Read More

Press - July 30, 2018

Ona On The Data Engineering Podcast

I was recently interviewed by Tobias Macey for the Data Engineering Podcast, the podcast about modern data management. We talked about the history of Ona and some of the technical challenges we’ve had to address to build global data collection platforms in humanitarian, international development, and global health verticals. You can check it out below.

Read More

Tech - June 05, 2018

Automate your Infrastructure by Reusing Terraform Definitions

Terraform is the tool for infrastructure as code that we use at Ona to automate the AWS resources we setup. Terraform can also be used with other cloud infrastructure providers. Find the full list of supported providers here. Terraform allows us to reuse infrastructure definitions through modules. However, there’s little documentation on how this can be done

Read More

Tech - February 28, 2018

Using Deep Learning to Predict Water Point functionality from an Image

An essential part of ensuring that people have equitable access to services is being able to quickly and continuously assess whether those services are functioning properly. If your government provides health care it needs to know those clinics are open, if it provides public bus services it needs to know those buses are running on

Read More

Perspective - January 10, 2018

Applying the Principles for Digital Development to Data Platforms

In Streaming Ona Data with NiFi, Kafka, Druid, and Superset, we went into detail on our technical approach to building a streaming data architecture, yet we skipped over why this is important. Simply put, we think the widespread practice of building custom software solutions in international development is a waste of time and money. This isn’t

Read More

Tech - October 06, 2017

Introduction To Data Scraping With Python

Last Thursday, Kelvin gave a talk at PyconKE 2017 titled “Introduction to Scraping using Python”. This was a beginner-level introduction that used three cool Python libraries: beautiful soup mechanize argparse In the talk, I demonstrated how to use these libraries to programmatically access the Kenya Power & Lighting Company’s website and automatically fetch a monthly power bill.

Read More

Tech - August 30, 2017

Streaming Ona Data with NiFi, Kafka, Druid, and Superset

A common need across all our projects and partners’ projects is to build up-to-date indicators from stored data. We have built dashboards showing project progress and other stakeholder-relevant information in our malaria spraying project (mSpray), drought response monitoring project in Somalia, and electronic medical record system (OpenSRP). Currently we create indicators on an ad-hoc basis,

Read More

Tech - April 24, 2017

Improve Sampling Accuracy with Weighted Random Selections

Every data collector eventually runs into this issue at some point — you know the makeup of your population as a whole, but you only have access to a small group that isn’t representative. For example, you know that as a whole, the population pizza topping preference for plain cheese:pepperonni is 1:1. However, you only have access

Read More

1 2 3 4 5 6