No Data, No Problem
Hi,
I'm Brandon.
Since my first days in the tech space (circa 2020–2021), there has been one discourse that industry and academia have always agreed on: the lack of available data in Zimbabwe. Pre-AI hype, when data science was the in-thing, I was one of the people who echoed that.
Fingers were always pointed at governments and institutions for not sharing their data. The hypothetical benefits of sharing data made up half the talks at every event I was part of... And it was true. As a young developer advocate, it made sense to me. We wanted the data to innovate. To drive impact. And we wanted it then.
Fast forward to 2026
Guess what??? Same echoes. Louder. The voices might have changed, but the message is still the same. Then I sit down and ask myself the question: what have we done in the past five years as tech community leads and tech communities? In the words of Joyner Lucas, "If I am not part of the solution, then I am part of the problem." My sentiments exactly. Not to be generalised across the tech ecosystem — this is what I feel about myself.
Then a belief came...
Ask not what your country can do for you, but what you can do for your country. — John F. Kennedy. Great words to live by, and to be honest, ever since I heard them in Barack Obama's documentary, Yes, We Can, I have subconsciously lived by them. I suspect that is what powers me to do everything I do. I reflect on what's going on and think to myself, What small things can I do to change the outcome, to have an impact... even a minimal one? Now, back to the data story: every time I echoed that sentiment, I became more ashamed of whining rather than doing something.
...and some small things followed
The first thing that came was this: build what you can with what you have, and create leeway for others to improve or add on to what already exists. Hence the jobs scraper. Or create the data backbone and foundation from scratch and let it just sit around. Hence a large dataset of scraped Shona words. All bound to be openly shared and possibly open for collaboration (if anyone ever takes an interest in this).
First things first, use what you have
If I were to pose the question to the rest of the dev community: is the available data so utterly unusable that all we can do is complain? Then what can we do about it, besides lobbying for five years with no tangible results? In one of the things I have worked on — a sign language teaching assistant — that is exactly what we were faced with. Not much data on Zimbabwe Sign Language to train a model on. And zero idea of what Zimbabwe Sign Language looks like.
So with a mentee (full disclosure here: it's not my project), we set out to figure out what we could do to make sure we created something that used as little data as possible. Then we thought, how about we track hands and save them, so that once a student signs a letter, we can reference the closest match? That was the initial plan — but something changed. Like Archimedes getting his Eureka moment in the bath, my solution came as I was walking to work, bumping Kendrick Lamar and pondering the challenge. Hand tracking has been practised for years — a very cool party trick at data science festivals and tech events. So something must be available for a shortcut developer like me to use.
And there was — MediaPipe. It could track hands as 21 coordinate vectors. As the icing on the cake, it could do that ALL WITHIN THE BROWSER. Never had I had a better Eureka moment. Like, man, it even solved problems I never knew I had. Like privacy. Like a reduced payload size to lower end-user costs. Like low latency. The browser would simply convert images into coordinates. I will go deeper on this in another article, so for now let's get back to the topic (sorry, my mind tends to drift a bit).
As I tried to understand the mechanics of MediaPipe, a new concept was presented to me — representation learning. In this case, a complex input such as an image is abstracted down to only the meaningful information needed. Where I had thousands of pixels of layered information, including background and subject, only 21 coordinates would be taken and used. Whilst technical, it also reminded me of another approach we could use to solve some of the problems we encounter: reframing the problem to arrive at a solution with fewer resources. The result was actually interesting — with 3 sets of coordinates, the assistant could confidently map out a saved sign, and with as few as five signs, we could train a model on vectors that offered feedback when evaluating signs.
Secondly, back to the basics
Systems need data. Repeat after me — systems need data. And if it does not exist, then try to help source it. Since 2024, I have been fascinated by the fact that a fluent speaker needs at least a thousand words in a language. With access to the open internet, why then are LLMs bad at Shona? Then an assumption dawned on me: we try to understand Shona through a translated lens, or some other technique I might be unaware of — be it fine-tuning, transfer learning or direct translation. So I set out to do one simple thing: collect my one thousand words. (Release the scrapers — honestly, it's concerning that 40% of what I do in my free time is scraping.)
Working with my scrapers, we went through multiple sources where Shona translations are found (mostly religious sources and Wikipedia). In this project, the dataset is the artefact. The final product. Just words — sitting. Waiting for something to happen. Maybe this is poor man's infrastructure I am focusing on, but I just wanted the words sitting there. Waiting for something to happen.
As I gathered the words, something interesting happened. A huge portion of the words from the sources I used (~25%) were non-Shona (numbers or other languages). Which brought me to an interesting task — how to weed out the non-Shona words. Which led to the next step: actually cleaning this massive dump of words (corpus is the word to use).
I had some help
I know, this sounds like a Post Malone feature, with Morgan Wallen I guess. But to some extent, I would like to acknowledge that in the work I have been doing, I have had some people chipping in. With Vision-SL, our proof of concept could detect gang signs (honestly, those were the only signs we could spell, lol). With the aid of researchers, we could actually train on real signs, and some of the things we had not factored in were brought to light.
Limitations
Remember, I once said that just because it works doesn't mean it works the way it should. While my approaches seem to work at the prototype phase, I believe there is still a lot of work, research and experimentation to be done. Sign language has motion signs, facial expressions can tell more than just fingers, and the Shona language is more complex (I am still figuring some of the stuff out). Some cases of missing data still need the actual data, not representations or these makeshift shenanigans I get up to at times.
At the end of the day, no data, no problem. I will use what I have to do what I can. When all I could do was shout, I did. Maybe now it is time to try to create, by example, a culture of individual contributions towards what is lacking. Hopefully, this will transition Africa from simply complaining to proactively addressing some of the stuff that acts as our hurdles.
In the next article, it will be time to go a bit more technical on the first part.
Kudos.
Let's connect via the following platforms: LinkedIn, on X as @Rogue0015, or check the Sessionize speaker profile if you want this signal live on your stage. And if you're new here, start with the talks — this blog is their echo.