On winning
I recently moved.
Around April this year, I decided to leave Nasarawa State, where I had spent my most formative years, and start fresh somewhere new. It happened that around the time I arrived in Lagos, YPIT (Young People in Tech) had announced they would be hosting a hackathon titled the Artificial Future and I’ve always made a point of jumping on any opportunity to show my skills, so I applied.
It was a 250-builder hackathon with about 50 teams and my team won the prize for the best pitch. This is my first in-person hackathon in a new city and I got to collaborate with some amazing people. It was a week of building non-stop. I had joined the hackathon without a team and I got paired with Rukayat Tokosi and Karl Moses.
00:0000:00
Our solution track was to build something around education and skills development in Africa. We all took our time to research on the problems that were worth addressing and while there were lots of solutions in the edtech industry, we found a gap from our findings, which is to solve a problem for trade apprentices where we have lots of young people who are learning different trades in the informal sector in Nigeria. There’s usually one oga (master) who trains about ten apprentices at a time or more with no individual attention. No structured support or someone to ask questions when training is over for the day and we found that most of these learners are early school leavers with limited literacy so our product needed to be something that they could interact with even without knowing how to read and one interesting thing we found was that every tool assumed the user could read. That one observation influenced how we addressed the solution. No text-heavy screens. No typing. No reading. The user had to speak, and the app had to speaks back in the language they understand.

Design of the onboarding
I headed the team and was responsible for the design and engineering while Rukayat handled the direction for the pitch and pitch deck and Karl Moses was our data analyst who handled the numbers from the youth unemployment rates, literacy statistics and the size of the informal economy. The number of children outside formal education. He sourced every figure, verified it, and traced it back to credible organisations: NBS Nigeria, UNICEF, Mastercard Foundation, SMEDAN, Moniepoint.

Design of the audio interface
Since the whole product depended on the user never having to read or type i needed to research how i could to start from voice, not as a feature bolted onto a normal app, but as the only way in and out. Someone talks, the app listens; the app has something to say, it talks back. Everything else got built around that constraint.
The pipeline is three stages: speech to text, the AI reasoning over that text, then text back to speech. Each stage turned out to have its own, separate problem to solve, and none of them were solved on the first try.
For speech to text in English, I went with what was already the default, reliable option: Groq running Whisper. It was fast and it was accurate enough out of the box, so I didn't have a reason to move off it. Pidgin was a different story. The same setup that worked fine for English was mangling Pidgin, it wasn't built for it, and it showed. I ended up switching Pidgin transcription over to Spitch, a speech AI trained specifically on African languages, and the difference was immediate.

When the user is speaking
Before I'd even gotten that far, though, there was a more basic problem: when the transcription came out wrong, everything downstream came out wrong with it. I'd say something, the speech-to-text would mishear it, and because the AI was reasoning over bad text, its answer would be bad and because the answer was bad, the voice reading it back out was bad too. I raised this on a mentorship call during the hackathon week, and the advice I got was simple: don't trust every transcription equally: score it. If it doesn't sound coherent, or the model itself isn't confident it heard you correctly, don't let the AI quietly guess. Flag it, and have the AI ask the person to say it again instead of answering off garbled input. That one change, checking whether a transcription actually made sense before treating it as truth, was what took the experience from "sometimes works" to reliable most of the time.
Text to speech had its own version of the same lesson. I initially tried AethexAI across the board, and for English it was genuinely good, it had a Nigerian-accented voice that made the AI sound like it was actually from here, not a generic foreign sounding voice assistant. But the same engine fell apart on Pidgin; the output just wasn't natural. So I split it: AethexAI stayed for English, and I brought in YarnGPT, which is trained specifically on Pidgin speech, to handle that side instead. Two different voice engines, picked automatically depending on which language the student was speaking.
The one thing I couldn't get working in time was full language coverage. The original plan was English, Pidgin, Yoruba, Hausa, and Igbo but the speech tools for the Nigerian indigenous languages just weren't good enough yet to ship with confidence. On the same mentorship call where I got the advice about scoring transcriptions, a mentor told us something that ended up shaping the whole build: strip it down to what's actually working. Not what's ambitious, what's working. So we cut scope down to English and Pidgin, the two languages where every stage of the pipeline, start to finish, was solid, and that became the version we demoed.