Kenya Hackathon (26 Sep – 7 Oct 2021)

Two months after the project kicked off, we started planning our first in person meeting and decided it should take the form of a hackathon. At the end of September Keegan and Senka flew to Kenya and spent 12 days with the Grassroots Economics team in the beautiful town of Kilifi.

Survey analysis

Similar to how it was done in Ocean View years ago, we created a survey to help us understand internet usage in Kilifi. Grassroots Economics’ field workers did a great job handing out the survey. Here some insights:

  • Most people use prepaid to access the internet.
  • Most people who participated in the survey use Safaricom as their mobile provider.

  • Most prepaid internet users buy their bundles daily.

  • Most people spend a relatively small amount each time they purchase a vouche (100 KSH ~ 0.88 USD).

  • Most users experience average speeds of 2 Mbps - 4 Mbps.

Tech track

Upon arrival at the Grassroots’ office, Keegan and the rest of the team decided to gain an understanding of Althea’s tech stack and set up a testbed in the office connected to Althea’s pre-existing infrastructure before implementing any of their own code.

The exploration of the codebase was divided into a few sections, namely, understanding the wallet creation process that would take place when a router was flashed with the althea firmware, how transactions were invoked, how devices’ wallets were identified in a network and what an exit node is, more on this later.

Setting up a testbed involved flashing routers and installing Althea’s firmware on them. This process was relatively straightforward, however, once this was done the routers needed to connect to an exit node to start sending cryptocurrency between the routers in the network. Quoting Althea’s website, “exit nodes logically connect one or many Althea networks to the Internet. They often will be in another city at a data center, rather than being part of the physical network. They provide the public IP addresses used by Althea subscribers to access the public internet. They also keep subscriber’s browsing history secure from the physical nodes which make up the network, like a VPN. The Althea team runs default exit nodes, but it is also possible for a subscriber to use a different exit node.” Thus, without connecting to an exit node, you cannot run a network. While we could select Althea’s African exit node when setting up our network it was actually out of commission and we could not get any assistance from Althea. This meant we could not activate our testbed. So we decided to take this issue into our own hands and set up our own exit node in the Grassroots office.

Two days into setting up the exit node we had run into numerous dependency issues and bugs due to a lack of documentation and an outdated codebase. Additionally, Keegan had fallen ill and would miss a large portion of the hackathon due to this.

The amalgamation of these issues led the tech team to the conclusion that adopting Althea’s tech stack was not a viable option for this project. It was evident that a custom solution would be a better option than trying to hack away at someone else’s code base and see what components are usable.

User journey

While the tech team was busy with figuring out Althea’s exit node, Shaila and Senka were working on user journeys for different personas (router owners, sarafu users, etc).

They created a mockup of the Sarafu mesh network user interface. Sarafu credentials can be used for log in. Similar to the iNethi platform, we distinguish between free offline content and paid internet access.  Some things still pending to be decided:

  • How are content creators awarded? (Internet vouchers, tokens, sarafu, Kenyan shilling)
  • Payment model. Free vs paid (if paid, sarafu only or both KSH and sarafu?)

Partnerships

We used the time on the ground to develop partnerships with local internet service providers and community network practitioners.

We had meetings with two local ISPs, Dapa and Tandaa. We explained the idea of the project, the community network concept, blockchain enabled routers and incentivized network expansion, and the importance of offline content.

We also connected to Twahir Hussein Kassim from Lamuka Hub / Dunia Moja Network. Their project ‘Kilifi Digital Villages’  is about setting up community network nodes in village public schools across the Kilifi North Constituency. Thanks to Twahir and some friends from APC, we learned more about policy and regulation of the sector in Kenya.

Note: only a month after our visit, it became official. The Communications Authority of Kenya (CA) formulated a licensing framework for community networks!

Site selection

We spent one day hunting for perfect spots to host our antennas and routers. The survey gave us an idea of areas in Kilifi where people use the internet the most. Apart from these data, the Grassroots Economics field workers also shared some insights from semi-structured interviews. For example, one bakery owner said they did not want ‘idlers’ or people who would be at their premises for extended periods of time because of the free WiFi. Even if location wise they would be the ideal router host - so we had to move on and identify others.

We hopped onto a tuk-tuk and visited 8 potential sites and evaluated them based on criteria such as proximity to points of interest, line of sight conditions (height, density of surrounding vegetation), availability of stable electricity supply, foot traffic density, existing relationship with sarafu, etc.

Thanks to our new connections at Dapa, the local ISP, we were kindly given access to their high sites - we visited 5 of them and hope to be able to mount some nodes once the partnership becomes official.

Dhow ride in the creek

In between all these activities, we appreciated several watersport activities that Kilifi offers: swimming, sailing, windsurfing, kayaking, snorkeling, catamaran rides… And we also did the traditional sailing boat (dhow) ride in the Kilifi Creek.