Mobile tech, social good: How these computer scientists are making an impact

Our latest episode of the GeekWire Podcast featured former Geek of the Week Yaw Anokwa. He’s a graduate of the University of Washington computer science program, the co-founder of the software startup Nafundi, and one of the computer scientists behind the Open Data Kit project (ODK), which provides smart forms for collecting data on mobile devices in rural areas, developing countries and other places with limited connectivity.

Anokwa gave listeners a glimpse into part of the technology world that we don’t always see: blending mobile technologies and social good. He provides an overview of the ways organizations are using the tools around the world, including relief organizations, health workers, government agencies and charitable organizations.

If you missed the show, or just prefer text, continue reading for edited excerpts from the conversation.

Todd Bishop: Give people a thumbnail sketch of what you’re doing these days.

Yaw Anokwa: I run a little technology consultancy with a buddy of mine — a long time friend and colleague — Carl Hartung. Our expertise is in software that’s designed to work well in challenging environments, so places with out a lot of reliable connectivity or with little power, novice users, or little resources. Places like rural Montana, war-torn Afghanistan, low-income neighborhoods in Oakland. At Nafundi, we’re probably best known for our work we did on Open Data Kit, which is this free and open-source platform that Carl and I co-founded as part of our Ph.D. research at UW.

Bishop: What is Open Data Kit?

Anokwa: ODK replaces paper forms with smart forms that run on a smart phone or tablet. It’s really great for mobile workers. So if you are a census taker, a health worker, a police officer, and you need to collect data accurately and quickly so you can get your results instantly, ODK is perfect. It can be used to collect text and numbers, take pictures, capture GPS location, scan barcodes, signatures, play videos, and the forms themselves are really smart. For example, you can use them to support branching logic and repeating sub structures and multiple languages and data encryption. The punchline is that we’ve got tens of thousands of users all over the world who use this platform and they use it to replace their paper forms.

I can give you a couple of examples of groups that people would know who use the software. Most people know Kiva, which is this microfinance organization. They have to gather information from borrowers when they give them loans. So narrowly, they’d go out with a piece of paper, collect that data, eventually move it from a rural place to the city, have it entered, and then six months later, it shows up on the website. With our software — some of Kiva’s partners have been using it — you just go out in the field, capture the information on a mobile device, capture the picture of the GPS coordinate, and then you can send it right on over the cell phone network directly to a server.

John Cook: What is the cell phone network like in some of these areas? They’re somewhat remote areas, right?

Anokwa: You’d think that in somewhere like rural Kenya or Ghana that there’s no connectivity, but there are two things that you can guarantee when you’re in rural Africa. One is that you can always find a Coca-Cola product. Pepsi has no chance (laughs). Secondly, you can almost always find connectivity. Be it a cell phone connection, voice or SMS or GPRS, you can generally find a cell phone connection. And even if you can’t find one in the present area that you are in, you’re often close enough to a road where you can send that information. So the way ODK works is that we gather a lot of that data offline, and then when a user comes close to a cell phone network, they can then send the data over the cell phone network to a server in the cloud or a server in the main city.

Bishop: What are some other examples of organizations out there that are using Open Data Kit?

Anokwa: You guys are familiar with the Egyptian elections that happened. It turns out the Carter Center uses ODK to gather information about elections. So they go to a site — again, they take a picture and fill out a form — and then send it off to a server. So the Carter Center can now collect election data as it’s happening in real time.

New York City, their department of health, uses ODK for a lot of the health operations — gathering emergency response data and those kinds of things.

Probably our biggest user is a hospital network in Kenya. They’ve got about two million people in the area. They go house-to-house and do HIV counseling and testing. And because of ODK’s logic, it allows them to encode an entire protocol about when somebody should be tested, when somebody should not be tested, within the form. So they gather information, and then the form helps them take care of those patients. And it’s touched maybe about 775,000 patients since the project was started.

Bishop:You have one of the most coveted degrees in the world right now. People at Google would be clambering to hire you. But you’ve decided to take what you’ve learned at the UW and apply it more toward things related to social good. Why did you make that decision?

Anokwa: That’s a fantastic question. To be fair, the ODK project started at Google as part of a sabbatical project by my advisor, and there was a number of people who helped. So I’ve had the chance to work at Google to do some social good. I think for me, what I care about the most, is getting a chance to take the skills that I’ve learned and actually apply them to problems that people aren’t working on. There are plenty of people here in Seattle who are much smarter than I, who could be writing software for SQL Server. I think the gaps are in software that’s designed to help folks in these resource-constrained settings. And all that said, I don’t want to make it seem like I’m some Mother Teresa figure. It’s plenty of fun to be out on the field and traveling and helping folks where we can. And also, what we’ve been able to show from our particular consultancy, is that it is plenty profitable. We’re able to make a living bulding the software, traveling the world and also having some impact. So for us, it’s a win-win.

Cook: So how did you come up with the idea originally, or get interested in this part of computer science?

Anokwa: You know, there’s a small but growing group of computer scientists at UW who have been working in this space we like to call ICTD, which is Information and Communication Technologies for Development, basically technology for good. There are a couple of us who have all spent some time in the field and seen the impact that software on mobile phones can have on the life of the poor. In my case, I had an opportunity to volunteer at Partners in Health in Rwanda in a very rural hospital. I was there for six months helping them deploy a medical record system. As part of that work, I saw the impact that a little bit of technology could do. In the case of say, HIV care, being able to track patient information across multiple visits , because HIV is a chronic disease, you really need computers to do that. Getting a computer to run in a rural environment that will stay up despite power cuts is something that computer science can help with. So that’s kind of how I got started.

Bishop: What kinds of technology are you actually using in your daily life?

Anokwa: I have to admit that I’m a big fan of Apple products. I rock an iPhone 4S and a MacBook and that’s kind of how I work day-to-day. Even though I write a lot of Android software, I still kind of prefer iOS for some reason. I like to call it a work-life balance. ODK is all about work, so that runs on Android, and my personal aesthetic is that of the iOS.

Bishop: So why those two things? Why ODK on Android?

Anokwa: Android has a ton of features that makes it fantastic for the work that we do. We’re talking about data collection in rural environments. We have a group of users who are based in the Amazon, in the rainforest, and an iPhone 3GS, as great as it is, just doesn’t work well in those environments. It needs to be waterproof, very robust, because these are folks who are going out into the field for months at a time. Android gives you a ton of platform choices, from devices that are a couple thousand dollars that are absolutely literally bulletproof, to cheap $50 Android phones. So that variety is really important. Additionally, it’s really important for us, as researchers, to be able to do everything that we could. The UW team has some projects in the lab where we’re connecting portable ultrasound units to the devices. And iOS, when we started, did not have those capabilities. So for us, both at Nafundi and on the ODK team, it’s really about a variety of devices, and just how flexible the platform is.

Bishop: So why the iPhone in your own life, and why not the iPhone 5?

Anokwa: I want to manage costs. I can’t always be upgrading. So I’m waiting for the iPhone 5S, which I’m assuming will be coming out in a couple of months. For the same reason I love Android for its flexibility as a user, I actually don’t want to be managing that complexity in my day-to-day life. I like that Apple has thought about what design choices I think are reasonable. And because I’ve been a Mac user for a long time, those design choices just kind of fit how I work. I like the aesthetic; I like how the apps are written; I like the choices that have been made so there’s no reason for me to configure my phone all of the time.

Bishop: Is it easier to program on a Mac or on a Windows PC?

Anokwa: I haven’t touched a Windows PC for ages. I prefer programming on a Mac, primarily because it gives me a bunch of flexibility. So even if you drop down to the command line and write some shell script, it’s just easier for me to do it that way. I can spin up virtual machines, so I have a Windows VM in case I need to test some software there, or a Linux VM. So for me, the Mac gives me the most bang for my buck in terms of development. I can write software for pretty much any platform.

Bishop: OS X, the current version of the Mac operating system, has its roots in Unix. Is that still obvious to somebody like you when you’re programming on the Mac?

Anokwa: Absolutely, absolutely. When I need to do something at the command line, all of the tools that the Unix ecosystem provides you are right there. I can grep for files. I can run trace routes. There are a bunch of tools there. And I think, based on what I’ve seen at UW, almost all the graduate students have Macs for that particular reason. Because at some point, you need to use Word, and it’s great for it to be able to work, but at another point you need to be able to write a command line app, so OS10 makes that super easy.

Bishop: You have computer science in your blood. You grew up in Ghana, and you came to the US when you were how old?

Anokwa: I was about nine when my family left Ghana and landed in Indianapolis, Motor City. I was there before I moved out to Seattle for grad school.

Bishop: What got you interested in computer science in the first place?

Anokwa: I’ve always seen computer science as a way to solve problems. As a very small child, my dad was teaching at a university, which I guess these days is known for basketball, and he had an old Mac. And the way we got onto the network was to use this small modem, and the modem was very slow. My dad refused to buy a new modem. And I was able to figure out — using a series of macros — a way to get that modem to dial up in the middle of the night and enter all of these sweepstakes. And these sweepstakes I was going after were modem sweepstakes to win a 56k modem. So I wrote the script, and within the third day of running the script, I won a modem. So from that point forth, I’ve always seen computer science as the most amazing skillset to have. For me, it helped me win prizes, and now it’s a career, but it’s all about solving problems.

Bishop: You ended up going to the University of Washington and graduating with your doctorate in computer science.

Anokwa: I do have a bachelor’s in electrical engineering. I come from more of a hardware background.

Bishop: If you were a parent with a teenager in high school or junior high with a real aptitude for science and math, what would you do to encourage them, or to get that kid into computer science?

Anokwa: I think I have a bit of an insight into this problem. My fiance, Hélène Martin, used to teach and started the computer science program at Garfield High School, and now she’s at UW as a lecturer and runs the outreach program. So the first thing I’m going to say is you need to open up your web browser, and then go to css.washington.edu/outreach, and on that page, it’s a huge list of resources, everywhere from K-12 resources for folks who are interested in computer science. The UW runs a lot of summer camps for kids, women and men, and also does a lot of outreach for teachers. So for example, if you’re a teacher who’s interested in math and science and doesn’t know anything about computer science, the UW runs all of these programs to train you and bring you up to speed so you can offer computer science. And you’re exactly right — kids, especially at a young age, who have a math and science aptitude are fantastic fits for computer science. I’ve done speaking at some of these camps, and it’s always exciting to see young computer scientists figure out how powerful these tools are and how it can change lives.

Bishop: What language would you tell them to start with?

Anokwa: I’m pretty language agnostic. I will write in whatever language allows me to solve the problem. Again, I take a very engineering focus to this. Whatever language I need to learn, that’s the language I’ll learn. I think that there’s a fight in the computer science education community about which languages work best. It’s kind of a toss up between Python and Java. UW currently teaches Java first. For the younger ages, there are a couple of tools that are out there — Smalltalk, Scratch —so there are these tools that are more optimized for kids. For the camps, I think they use processing languages more for graphic language that helps kids really get engaged.

Hélène Martin in the “Geeks Who Give Back” calendar

Bishop: You mention that your fiance Hélène is a lecturer at the UW now and she had a lot of experience at Garfield. So do you guys get into coding wars? What’s date night like?

Cook: It seems like a reality TV show, “Coding Wars.”

Anokwa: We try not to mix dating and work, I suppose. So it’s not like at dinner we’re talking about which languages are best or what not. We have plenty of other stuff to talk about. In all honesty, she’s a lot more compassionate about computer science than I am. She loves computer science as a discipline, as a science. She loves discussing different programming languages, et cetera, et cetera. I see computer science as a tool, so for me, I don’t particularly care about the elegance of the code, does it work, does it not work. Whereas, sometimes when I’m working at home, she’ll look over my shoulder and say, “Oh, that’s the wrong way of doing it. You should use this fraction, et cetera, et cetera.” So we fight over those kinds of things, but you know, she’s a pure computer scientist and I’m a very practical computer scientist.

Bishop: You guys are both motorcyclists too, right?

Anokwa: Yeah, we have that in common. Computer science is not really a dangerous career choice, so we figured motorcycling was a little more enjoyable. We both ride year-round. She’s got a little sports bike and I’ve got a slightly bigger bike, and we cruise around Seattle in the rain and in the dry, having a great time.

Bishop:I’ll link to it – Hélène was one of our “Geeks Who Give Back” calendar pinups, as we call them. We’ve got a great picture of her with her bike.

Bishop:How does technology translate into your bike? Do you have all sorts of fancy GPS or is it just pure machine?

Anokwa: It’s interesting because Hélène also comes from a hardware background. She grew up in First Robotics, which is this sort of hands-on robotics craft. And myself, growing up in Indianapolis, I’m a huge car guy. So when we’re writing code, we’re writing code, but when the computers get shut down, we talk mechanics, also. We often just go out and work on the bikes. Working with our hands is something that we enjoy doing, be it motorcycles or computers

GeekWire airs on KIRO Radio in Seattle (97.3 FM) at 7 p.m. Saturdays and 1 p.m. Sundays, except when pre-empted by live sports. The show runs every weekend on GeekWire.com. Get every episode using this RSS feed, or subscribe in iTunes, SoundCloud and Stitcher.