Difference between revisions of "DevSummit07:Software Development in the African Context"

From DevSummit
Jump to navigation Jump to search
m (1 revision imported)
(No difference)

Latest revision as of 23:22, 20 May 2015

Facilitated by Soyapi Mumba, Malawi

Soyapi will share his experiences as a software developer working on healthcare-relate software tools in Africa.


Soyapi's NGO Baobab Health Partnership was founded by a US hardware engineer; provides technology systems for health care institutions.


African/N. American commonalities:

Same software, development tools are available there & here

Same basic hardware is available

African challenges:

Electricity: supply is not reliable, so ability to manage power interruptions is critical

Bandwidth limitations: many communities have no Internet access, and many more have slow connections. "Free download" may not be a successful means of distribution.

Lack of skilled implementers

Dust: hardware damage, failures much more common

Heat: auxilliary cooling may be necessary

Many languages

Cultural differences: tribe, ancestral home village is an important part of identity, but many people may not know their date or place of birth. Many people have variant spellings of their names, different names for different contexts, different names in different languages, etc.

Low literacy rates: information is transacted verbally more than in writing

Low computer literacy: not many people have access to computers or know how to use them. Many more use mobile phones: in Malawi, a country of 2.5 million, c. 50,000 use computers, but 800,000 use mobile phones. Phones may be better platform than computers for some projects. For example, farmers don't know market prices for their crops, and so sell them for too little to predatory middlemen. One project provides market data via mobile phones so farmers have better business data.

Internet traffic often has to leave local area for routing (through Europe, for example), so connectivity problems can take down entire region.

Photovoltaic power generation is slow to catch on (except in remote areas) because of high start-up cost.

Portable generators are more common in urban areas

Wind power generation has had some success: hactivate?

Satellite internet is used to some extent, but not all locations are flat enough to make satellite connections successful. VSAT doesn't work well, though: it's necessary to use other satellites/frequencies

Web hosting on .mw TLD is much more expensive than .org, .com, so many groups host on foreign servers. Online transaction processing is also more difficult.

Medical staff lacked computer skills, so Baobab developed custom networked portable (touch-screen tablet) Terminals:

powered over ethernet with battery backup. No hard disk, but flash RAM provides 16MB long-term storage for OS

Opera browser is the main client software, server delivers a custom Ruby / AJAX application. Application is open-source. Because it's browser-based, application can also be used by clinics with conventional PCs.

Information on their hardware hacks and services available at


videos also on YouTube

Touchscreen approach simplifies user interface: no keyboard, users can work with icons/images instead of text. Does not require ability to write. Onscreen keyboard available for some data entry needs.

One concern: lack of keyboard interface may perpetuate low literacy

No audio in, currently, but Baobab is looking into recording medical sessions.

Hardware iOpener is custom-produced from commonly available stocks parts in Malawi to provide lower labor costs and local expertise for repairs. CPU costs c. $29, and then Baobab adds Ethernet power, touch screen, and a few other mods, and sells to clinics for a little over cost.

Data entry is done, as much as possible, via drilling down into pick lists instead of free text entry

Hardware can be wall mounted or placed on desk stand for stationary use.


1. Patient intake/registration is much faster now than it used to be. Patients used to have to wait hours in line; now they get quick intake, and are given a bar code that they can scan in with at future visits.

2. Access to information: paper filing system was very inefficient. Staff now have ready access to patient histories

3. Identity: patients have their own Health Passport (unique identifier), and so are easy to recognize from visit to visit.

System is supported by local server systems: miniclusters of several machines to provide redundancy/reliability. Local service provides real-time info: no need to wait for nightly updates, paper records to get through data entry, etc.

Programming the application is routine web application development, except that pointing accuracy is finger, not mouse, and screen is not very big.

All clinic systems have paper backup option, and software is designed to support retroactive data entry. This way, if servers fail, staff can switch to paper system, and enter data in computers later when they're online again.

HIPAA doesn't exist in Malawi; Baobab's system offers security safeguards, but not as many as American systems must provide. Since terminals have no interface other than browser, and application limits what user can do through browser, little risk of tempering through terminals.

Hardware Specifications for the i-Opener Touchscreen Hardware can be found at http://www.baobabhealth.org/2006/08/29/baobab-linux-specifications/