We were recently featured on Microsoft’s global developer news site, http://www.microsoft.com/en-gb/developers/articles/week03jul14/how-a-bizspark-start-up-created-vetafrica-a-windows-phone-app-that-helps-african-farmers Full article below.
Craig and Iain were galvanised to use technology to help African farmers when they were studying computer science at University in Glasgow. They formed a start-up, Cojengo, and partnered with Microsoft’s 4Africa initiative to build a Windows Phone app, VetAfrica, to change the lives of those who need it most. Here’s their inspirational story…
“Six years ago Iain (CTO and Co-Founder of Cojengo) and I studied together at The University of Strathclyde in Glasgow - we’re both computer scientists - and it was during my final year project back in 2008 that we were first exposed to the issues faced by African farmers and had the opportunity to apply technology to address those issues. I actually went across to Ethiopia and began to really get initial exposure to the problems faced by people in the area. This was at the time mobile technology had really started to kick in… there was an emerging opportunity to take advantage of mobile as there was no fixed line infrastructure. The project really kicked off last year when we returned to Africa to further understand the challenges, whether they still existed (which of course they did) and that the technology could help them. We decided to partner with the 4Africa initiative and work to support farmers in East Africa - namely Kenya, Uganda and Ethiopia - as the diseases our application deals with are most prevalent in those countries.
In the developing world there is a lack of professional veterinary services available to farmers, and with 80% of the population across East Africa associated with agriculture, it’s vital that people have access to professional veterinary services like we do in the developed world and help keep the farmer’s livestock as healthy as possible. The app works in two key ways: it provides a level of veterinary services so farmers can diagnose and treat the animals themselves. It also helps those vets and animal health workers that are on the ground, as farmers can provide them with the data the app provides and means they are better prepared with the right resources when going out to rural areas. It essentially gives access to data to save the lives of the animals - and improve the welfare of the farmers and their families.
This can then be used for disease surveillance purposes and reporting in almost real time.
Another massive issue is the severe lack of information on animal diseases and which drugs to use for what symptoms and when to treat them. Our app collects live data stored in the Cloud (Microsoft Azure) so that data can be shared with stakeholders to keep everyone informed and grow their knowledge base. This can then be used for disease surveillance purposes and reporting in almost real time.
VetAfrica is a native app, built in C# using Visual Studio. Iain only had limited experience with Visual Studio - he did Java at Uni so even though he’s essentially a PHP dev, going from Java to C# wasn’t too bad. There are plenty of resources online, like sample codes and local databases - there’s plenty of stuff out there and if you’re stuck there’s always the forums. Iain actually prefers Visual Studio to Eclipse. In particular he thinks the Visual Studio emulator’s really good compared to others he’s used.
When we started out we were members of Microsoft’s BizSpark programme so were already used to working on the Microsoft platform to a certain extent. When we applied for BizSpark we didn’t know what it was, to be honest. We submitted the details and it was only after doing it we realised how powerful it was. It gave us access to the software free of charge and we got free Microsoft Azure credits to start quickly storing data in the cloud - starting quickly is imperative for a start-up.
We could see where Windows Phone was heading and in conjunction with the 4Africa initiative it made sense for us to build the app on Windows. We were really excited by what the 4Africa initiative was trying to do and our partnership is very strong. Microsoft’s tech is going in the right direction and Windows Phone is the fastest growing platform in Africa (iOS is just too expensive). Android does have market share but with Android it was difficult for us to collect all the data that’s such a crucial part of the app, so we thought we’d start with Windows and go from there. Azure was a key part of the puzzle - Android wasn’t as natural a back end for developing on Windows Phone and we could easily tie up with Azure on Windows Phone and just start running.
There were considerations specific to the fact we were building the app for developing nations - for example the app was always designed to work offline and data synced when appropriate - the logic was built that way - but it does require a connection via GMS or WiFi in order to share the data. In fact, internet access isn’t as big an issue as we thought it would be, especially in Kenya where the telecommunications industry is very advanced and mobile services are a crucial part of the economy, for example, M-Pesa (the world’s largest mobile payments system) was pioneered in Kenya.
Language was less of a barrier than we expected, too. English is one of their first languages, so there was less of a language difficulty but we needed to describe some things a different way. We found that being less text based and using more images to keep the UI as clean as possible worked best. The floppy disc icon didn’t make sense to one farmer - we’re now using a text symbol instead but we’re not even sure if that’s better, to be honest! You have to be aware of cultural differences too, for example thumbs up is not a good sign to use in certain situations.
Everyone is on top up cards and pay as you go schemes for data and airtime. The internet connection aspect and managing background tasks was our biggest challenge. Background tasks are separate from the app itself so we need to be aware of times when users were using the app and both accessing the storage and the database at the same time. We ran into problems when people were accessing storage and the database wasn’t saving or they couldn’t access what they needed as two things were running at once. We found the answer from forums - when the app is launched, you disable the task and when it’s closed you enable it so you know background tasks will only run when the app’s not being used. Background tasks now run every 20 minutes or so and then the system checks when there’s new information.
The GPS aspect is interesting - the app takes the GPS details and saves the record. While we were trying to be really accurate with the location in the beginning, in practice it takes a while and the app would time out so we changed to PSP. This was less accurate but increased performance. Cows can move around anyway s it doesn’t have to be spot on, it’s OK to get district level data or review locations between borders. In one test scenario, we thought the GPS wasn’t functioning properly, as it returned all zeros, then we realized we were bang on the equator next to Lake Victoria in Uganda, and the GPS reading was actually accurate!
The app uses Azure for cloud storage and server side scripting - and actually the easier part of the build was Azure, we spent more time on the local database side - but with Azure it was pretty simple, that was never the tricky bit.
We wanted the app to work offline but it’s the data collection aspect that’s so valuable. We don’t need it straight away but it’s important we get it at some point. The mobile services aspect of Azure works well, I can get data queries I need and the SQL element is set up really well.
As far as testing goes, we did a lot ourselves initially but since we all tend to use aps the same way we knew how important it was to test it with the people who would ultimately be using it. We went to Uganda last November - we were all riding around on bikes handing out phones to the animal health assistants for testing! It worked really well. We had to tutor them a bit around the UI, but they could see how quick it was to get used to. The back and home buttons on the Windows OS was a challenge, which is where the tutoring came in as we had to tell them versus changing it.
Other factors also became apparent, like some farmers have bigger thumbs. In general manual workers find it harder to use a device, so it was a trade-off between trying to utilise all the features a smartphone has but without overcomplicating the menus to the point where it couldn’t be used. That’s where the design comes in. We had to consider text blocks and learned that colours aren’t as good as black and white - it’s more important that the people using the app can use it than the fact it looks good. Function definitely won over form. It was invaluable to test in situ, this is where we ran into finds like the GPS and internet connection that we could never replicate here so we needed to try it for real.
The farmers do rate and review the app, and we have a feedback feature in the app, so we analyse the comments to understand how the app’s being used and where improvements could be made. It’s still very early days but the initial feedback’s been very positive. The capability and support provided by the app has made the farmers think differently and be more diligent about looking at the animals and spotting the signs and symptoms. It’s also helped the vets improve their knowledge and skills as a professional. The data capture side has made the biggest impact to them - it’s difficult to complete forms on livestock every month and meet required deadlines so it’s really sped up that data collection process which means the vets can see more animals. Whereas they were only seeing 4/5 farmers and their animals in one day, they’re now seeing 20!
It makes it all worthwhile - six years ago we saw the problem, the farmers asked for the technology to help them and now it’s helping them in a really practical way.
We’re now involved in our first pilot projects with the Kenyan government and a private veterinarian distributor. There may be a Windows 8 app related to this in the future as they would need a super-app to manage the data and people’s tasks and efficiencies, including push notifications to people they manage. So a tablet app could be on the way, just with different functionality. And looking further ahead, once we have VetAfrica widely adopted, we’ll work to develop a full suite of health and agriculture apps based on customer demand.”
The Scottish Government have been very supportive of VetAfrica and the work Craig and Iain have been doing -see their article: Africa benefits from Scots technology - and Craig met Nicola Sturgeon and Peter Ferry and this short video puts the app and their achievements in context Africa benefits from Scots technology.