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
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.
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,
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
Redirecting HTTP traffic while using AWS Target Groups
A few months ago we received a support query from a user who was unable to log in. We couldn’t replicate the issue and they weren’t able to work with us to get it fixed. We concluded that they were doing something unique and had ended up fixing it from their end somehow. Fast forward
Tech at Ona: What We Built in 2016
It’s been a big year for the Ona tech team! In this post, we look at what we built in 2016. Ona platform tech in 2016 In 2016 we added more new features to the Ona platform than in the previous two years combined. Here’s a run-down of select features we added to Ona in
Python Expose Meetup is coming to the Ona Kenya office in early December
If you enjoyed the last Python Expose Meetup, then you definitely can’t miss out on the next one on 3rd December in our Nairobi office. Join James Maringa and Frankie Onuonga for a lively discussion about: Comparisons between basic Python data structures — including looking at fundamental and semantic differences, internal implementation needs, costs of operations, and memory
Signing Git Commits Using Your GPG Key
For data collection projects we contribute code to, it’s in our best interest to verify the identity of contributors linked to us. The goal is to prevent situations like this totally plausible horror story, where Mike Gerwitz discovered a back door created by his account that he didn’t remember making. We realize signing Git commits using
Thanks for Attending the Python Expose at the Python Nairobi Meetup
A special thanks to everyone who attended the Python Expose at the Python Nairobi Meetup. The 4 hour session that took place at Ona’s Nairobi office had presentations from Dickson Ukang’a, Co-founder and Director of Engineering at Ona, Vitalis Shisoka, Software Developer at Echo-Mobile and Edoardo Biraghi, Director of Software Development at BRCK. The speakers kept the crowd
Working with Data in the Unix Shell
I recently gave a talk at a data science meetup organized by the good people at iHub Research, on using Unix shell tools to work with data. It was primarily a hands-on workshop, but the slides I prepared may be useful to those who couldn’t make it. You can find the presentation embedded below.