Table of contents
No headings in the article.
Welcome to the Mchango series! I'm Chikezie, a smart contract developer, and also the CTO at Mchango Operations.
This series will cover both the technical and non-technical steps and decisions we made while creating Mchango. The goal of this article is to give you a peek into what goes on behind the scenes at Mchango, both as a product and as a startup. So sit back and enjoy the story.
Let's take a moment to rewind. It's August 7th, 2023, and Base has just announced a partnership with Aya to host a hackathon, aptly named Ayathon. If you're not familiar with the blockchain world, you might be wondering what Base is. No worries—I'll break it down for you.
Base is a scaling solution developed by Coinbase, which you might recognize as a well-known cryptocurrency exchange. The main purpose of Base is to create a secure, affordable, and user-friendly platform for developers to build decentralized applications on. Now, back to our main event: Base and Aya have teamed up to draw developers and users to their Layer 2 scaling solution. They're doing this by launching a hackathon that not only challenges developers but also dangles a tempting $3,000 prize for the winner, along with other incentives.
There's a saying that passion is what separates a good developer from a great one. While passion is important, I'll be honest—it wasn't my main reason for joining the hackathon. The truth is, I was driven by the cash prize. At that time, I was "passionately" hungry, having just finished a hackathon that left me rich in experience but not in my wallet, as my team didn't win. Our loss was due to several issues, like poor collaboration and less experienced developers, but I won't dive into those details here. I'm sharing this to set the scene: I was frustrated and low on ideas.
Then, the following day, I received a message on Telegram from someone named Michael. Today, he's a friend and business partner, but back then, we were complete strangers. Michael had an idea for the hackathon and wanted me on board. Initially, I was reluctant. The sting of the previous loss had left me demoralized, and I was wary of facing another potential failure. However, curiosity got the better of me, and I asked Michael to tell me more about his idea.
To fully appreciate the innovation behind the idea, let's set the stage with some context from Nigeria, where a traditional practice known as "Ajo" (sometimes spelled "Ajor") is common. For those in Nigeria, you're likely familiar with this concept.
Ajo is a communal savings scheme, popular among market women and government workers. Here's how it works: each member of a group contributes a fixed amount weekly, and a designated treasurer is responsible for holding the funds and keeping a written record of contributions. At the end of the month, the total savings are handed over to one member. This cycle continues until every participant has received their share. However, this system is not without its flaws. Trust is a significant issue; there have been instances where treasurers abscond with the money. Disputes also arise over payment records and the order of payouts, making Ajo a risky financial venture for those involved.
Mike highlighted these issues and proposed that we tackle the trust problem and modernize the payment system using blockchain technology. The concept was straightforward: on our platform, users could create and join groups. Each group member would contribute money over a set period defined by the group admin. Once this period ended, the funds would be distributed to group members. You might think this sounds too simple to be groundbreaking or to win a hackathon, but I'm happy to report that assumption is incorrect. I believed we had a strong chance of success because our project addressed a real-world problem. It wasn't just another beginner's project like a crowdfunding platform or an NFT marketplace, which are often over-represented and extensively covered in online tutorials. I thought our idea's simplicity was its strength, but that turned out to be my first mistake. 😆
I decided to join forces with Mike on this project, taking on the role of a smart contract developer. It's worth mentioning that Mike is also skilled in smart contracts, but we knew we needed a well-rounded team to meet the hackathon's two-week deadline. To achieve this balance, we brought on board a project manager named Tosin, a frontend developer called Tobi, and a designer, Eni.
With the team assembled, I began to feel my enthusiasm return, and I was eager to start building. In my head, there was no doubt that by the end of the hackathon, we'd have a minimum viable product (MVP) ready to showcase. But I'll save the outcome for later—no spoilers here.
Once we had spent some time getting to know each other, it was time to focus on the architecture. This phase involved laying out all the building blocks of our system and deciding on the workflow. In the next article, I'll dive into the details of our smart contract architecture, the challenges we encountered, and the many mistakes we made along the way. If you've enjoyed this read, make sure to follow and hit the notification bell so you don't miss out when the next installment is published.
Up next: smart contract architecture, first iteration.