Huin!om
San women learning to use the Huiom application on a mobile device from a project collaborator
Although I've known @Nico Pace for two years thru SSB, I only personally met him during the last #dweb-camp. In the first days he approached to talk about a project that had received funding from APC and he believed it to be aligned with the work I had started with #community-first applications.
We connected with Professor Nic Bidwell and @Mike Jensen from APC, who were responsible for the project and they explained the objective was to connect 40 villages of the San people that live in the Kalahari, territory known as Namibia, thru phones to each other. Nic has loads of experience on community-based action and research for technology design in the global south, she's big on #decolonisation and very careful on how we discuss things and work on the project. Both her and Mike work mainly on #communitynetworks with APC.
After many more calls we all agreed Secure Scuttlebutt would be a perfect protocol for creating such #sneakernet, and a decided that we'd could create a voice-messaging app prototype built on SSB. During Dweb @mixmix and @Maui also approached me about #ahau, and later we also agreed there were parallels between the two projects.
The San villages don't have electricity and the environmental conditions are harsh (desert), so each of them was given a rugged, low-end, Android device, a solar panel, from where to charge the phone, a speaker and a box to store the gear.
Video of full kit that each San village got, includes solar panel, protective box, speakers and phone running the huiom app. Audio in the video is coming thru the speaker and the app, which got it thru SSB.
Software development
I had gathered some experience with SSB on mobile for the past years with Manyverse for the #mobile-ssb-quests, the Open App Hub for #moinho-mesh, the mebêngôkre project and the research for a #community-first architecture.
To be sure we had a chance of success we asked Nic to run Manyverse and try syncing between phones. As that was a success I started pulling together the fundamental parts of the app to start our own client.
Mix helped out with the code early on with the first p2pstories prototype. His contribution with the ssb part of the project was of huge value, and so was his help with code review and project management. Early on he advised us to get some test phones of the same kind that would be used in production in my hands, and presented opportunities for that to happen. Unfortunately we weren't pro-active enough to take the advice, could have given the project much better results.
We were able to get a working prototype with most functionality early on, leaving time for debugging. Nico, Nic and Mike helped a lot with testing, as two of the Android phones I initially had for testing died during the months of development, leaving me only one device to test.
There were problems with blobs
showing on newer Android phones, and a few native Android libraries not behaving well with the low-end production devices. One of the most important lessons from this project was how difficult it is to develop for Android and it's huge array of hardware and software versions. Relying on #react-native also proved to be a challenge, as many fundamental libraries for dealing with the file system and WiFi for example, had very different behaviors across devices. @andrestaltz was an amazing and patient mentor, helping out with whatever he could.
On the last few days before the project going to production I updated Android Studio, which completely ruined the development environment on my machine. But in the end I was able to hand the apks with all the changes we had agreed were needed.