Bonaventure OgetoBy Bonaventure Ogeto|

A Day in the Life of a McTaba Marathoner (Nairobi, 2026)

A typical day in the McTaba marathon starts at 9:00 AM with instructor-led sessions covering new concepts and live coding. Afternoons are spent on project work and pair programming. The day wraps with code reviews and stand-ups around 4:00 PM, with most marathoners continuing to study or build in the evening. The pace is intense, the days are long, and the 6-month structure is designed to mirror professional software engineering rhythms.

7:00 AM: The Commute, the Coffee, the Mental Warm-Up

Your alarm goes off at 6:30 AM. If you live along Thika Road or out in Kitengela, make that 5:45. Nairobi traffic does not care about your learning schedule, and the matatu from Rongai to the CBD during rush hour is its own endurance test.

Most marathoners have a routine by week three. Some grab a quick mandazi and chai from a street vendor near the stage. Others stop at Java House or Artcaffe if payday was recent. A few bring packed lunches from home because KES 100,000 in tuition means budgeting everywhere else. Whatever the morning ritual, the goal is the same: get to the space, open your laptop, and settle your brain before the session starts.

The 20 to 30 minutes before class officially begins matter more than you would expect. This is when people review yesterday's notes, re-read code they wrote the night before, or quietly Google something they were too embarrassed to ask about during the previous afternoon's session. Some mornings you will feel sharp and ready. Other mornings, especially mid-week in the middle of a tough module, you will sit down wondering whether you belong here at all. Both states are normal. Both pass.

9:00 AM: Morning Session (New Concepts, Live Coding)

The morning block runs from 9:00 AM to roughly 12:00 PM. This is the most structured part of the day. An instructor introduces a new concept, tool, or pattern, then builds something live on screen while the cohort follows along.

Early in the marathon, morning sessions cover fundamentals: HTML structure, CSS layout, JavaScript functions, how HTTP requests actually work. The pace is measured. There is time to ask questions. By week eight or nine, the sessions move faster. You might spend a morning learning how to set up a PostgreSQL database, define schemas, and write queries, all before lunch. By the final third of the programme, morning sessions sometimes feel more like professional workshops than classroom lectures. The instructor walks through an M-Pesa STK Push integration or a WhatsApp Business API webhook, and you are expected to have enough context to follow along without pausing every two minutes.

The live coding format is deliberate. Watching an instructor hit errors, debug in real time, and talk through their reasoning teaches you something that pre-recorded tutorials cannot: how experienced developers actually think when they build. You see the false starts, the wrong guesses, the moment they open a browser tab to check documentation. That process is the skill, and it looks nothing like the polished code snippets in a textbook.

Around 10:30 AM, there is usually a short break. People stretch, refill water bottles, check their phones. Conversations during breaks tend to be about what was just taught. "Wait, did you understand the part about async/await?" or "I still do not get why we need middleware here." These five-minute hallway exchanges clear up more confusion than you would think.

12:00 PM: Lunch Break (Nairobi Life)

Lunch runs about an hour. What you do with it depends on your budget, your energy, and where the nearest kibanda is.

Some marathoners walk to a nearby restaurant for ugali and sukuma wiki, or a plate of pilau if the week has gone well. Others order from food delivery apps and eat at their desks. A handful disappear for a quick errand, because Nairobi life does not pause for your coding education. You might need to send an M-Pesa payment to your landlord, pick something up from a shop on Moi Avenue, or make a phone call you have been putting off all morning.

The smartest thing you can do during lunch is step away from your screen. Stare at trees. Walk around the block. Let your brain process the morning's material without actively trying to learn more. Cognitive science backs this up, but you do not need a study to know that four straight hours of new information leaves you foggy. The break resets you for the afternoon, which is where the real work happens.

By the second month, lunch groups form naturally. Three or four people who sit near each other, or who are working on the same project, start eating together every day. These groups become your first professional network, even if nobody thinks of it that way at the time.

1:00 PM: Afternoon Block (Project Work, Pair Programming)

The afternoon is where the marathon earns its name.

From 1:00 PM to about 4:00 PM, you are building. The morning session introduced a concept; the afternoon forces you to use it. Sometimes that means a structured exercise: "Build a REST API with three endpoints that stores data in PostgreSQL." Other times, especially later in the programme, the afternoon is dedicated to your ongoing project, and nobody tells you exactly what to do next. You have a spec, a deadline, and a mentor you can ask for help. The rest is on you.

Pair programming is a regular part of the afternoon block. You sit with another marathoner, share a screen, and build together. One person types while the other watches, questions, and suggests. Then you switch. If you have never done this before, it will feel awkward and slow at first. By week six, most people start to see the value. Your partner catches mistakes you would have spent 30 minutes hunting. You catch theirs. And explaining your logic out loud forces you to actually understand it, not just pattern-match from memory.

The afternoon is also when frustration peaks. You will spend 45 minutes stuck on something that turns out to be a missing semicolon or an environment variable you forgot to set. You will watch your code throw the same error twelve times in a row and feel certain you are the only person in the room who does not get it. You are not. Walk over to the person next to you and ask, "Can you look at this?" Nine times out of ten, they are stuck on something similar, and the act of explaining your problem to another human reveals the answer before they even respond.

Mentors float through the room during afternoon sessions. They are not there to give you answers. They ask questions: "What have you tried so far?" and "What does the error message actually say?" and "Have you checked the documentation for that function?" This is frustrating in the moment and invaluable in the long run, because after the marathon ends, there is no mentor walking past your desk. You need to be your own debugger.

4:00 PM: Code Reviews and Stand-Ups

The last structured hour of the day is built around two professional rituals: code review and stand-ups.

Code review means someone else reads your code and gives feedback. In the early weeks, this is mostly the instructor or a mentor pointing out things like inconsistent naming, missing error handling, or logic that works but is harder to read than it needs to be. Later, marathoners review each other's code through pull requests on GitHub, the same way professional development teams operate. Getting your code critiqued is uncomfortable at first. It feels personal. It is not. Learning to separate your identity from your code, to hear "this function is confusing" without hearing "you are stupid," is one of the most important professional skills the marathon teaches.

Stand-ups are short. Each person answers three questions: What did you work on today? What are you working on tomorrow? What is blocking you? The whole round takes 10 to 15 minutes. The point is not status reporting. The point is that saying "I am stuck on connecting my frontend to my API" out loud, in front of the group, often results in someone saying "I just solved that, let me show you after." Problems that feel isolating when they are inside your head become solvable the moment they enter the room.

By 5:00 PM, the formal day is done. Most people do not leave at 5:00.

5:30 PM: Evening (Homework, Community, Rest)

The marathon does not assign "homework" in the traditional sense. There are no worksheets. But there is always more to build, more to read, more to understand. Most marathoners spend two to three hours in the evening continuing their project work, reviewing material from the day, or watching supplementary tutorials on topics where they need extra repetition.

Some people stay at the space and work until 7:00 or 8:00 PM, feeding off the energy of others still grinding alongside them. Others head home to beat the worst of Nairobi's evening traffic and work from their bedroom, a corner of the living room, or a quiet cafe. The commute home can be productive if you are on a matatu: reading documentation on your phone, listening to a podcast about the topic you are learning, or just mentally replaying the code you wrote that afternoon.

There is a temptation, especially in the first few weeks, to work until midnight every night. Do not. Sleep matters. Your brain consolidates learning during sleep, and showing up exhausted to the morning session means you absorb less, fall further behind, and burn out faster. The marathoners who finish strongest are almost never the ones who pulled the most all-nighters. They are the ones who found a sustainable rhythm: intense work during the day, focused study in the evening, and enough sleep to do it again tomorrow.

The cohort's WhatsApp group stays active in the evenings. People share resources, ask questions, post memes about JavaScript, and occasionally organize weekend study sessions. This ongoing conversation is part of the learning. When someone posts a question at 9:00 PM and three cohort mates jump in with different approaches, everyone involved learns something.

The Weekly Rhythm: How Days Build Into the 6-Month Arc

Individual days matter, but the marathon is really structured around weeks. Each week has a theme or a primary skill. Monday introduces it. Tuesday and Wednesday deepen it. Thursday and Friday are about applying it in a project context. The weekend is for rest, catch-up, or getting ahead if you have the energy.

The first few weeks focus on web fundamentals: HTML, CSS, JavaScript, Git. This phase feels slow for people with some prior experience and overwhelming for complete beginners. Both reactions are expected. The foundations matter even if they feel basic, because the speed picks up significantly once you hit backend development and databases.

The middle stretch of the marathon is where things get intense. You are learning React, building APIs with Node.js, integrating databases, and starting to work with the African Stack. This is the phase where projects get real. You are not building toy apps anymore. You are building a payment flow that processes M-Pesa transactions, or a notification system that sends WhatsApp messages. When something you built actually sends money from one phone to another for the first time, the months of fundamentals suddenly make sense.

The final weeks focus on capstone projects and career preparation. You choose a substantial project, scope it yourself, and build it from scratch. This is the closest simulation of real professional work the marathon offers. Nobody tells you which library to use or how to structure your database. You make those decisions, defend them during code review, and live with the consequences when something breaks at 3:00 PM on a Thursday.

Fridays often have a slightly different energy. Some Friday afternoons include guest speakers from Nairobi's tech scene, or demo sessions where marathoners show what they built that week. Presenting your work, even something small and unfinished, builds a muscle that matters in job interviews and professional settings. The first time you demo, your voice might shake. By the fifth time, you are walking the room through your architecture decisions like you have been doing it for years.

What Changes From Week 1 to Week 26

The transformation is not gradual in the way you might expect. It happens in bursts, separated by plateaus that feel like you have stopped learning entirely.

Week 1: Everything is new. You might not know what a terminal is. You are copying code from the screen and hoping it works. The cohort is friendly but nervous. Everyone is quietly measuring themselves against everyone else.

Week 4: The initial excitement fades. This is where imposter syndrome hits hardest. You see other people who seem to "get it" faster, and you wonder if you made a mistake signing up. You did not. The people who seem confident are also struggling; they are just better at hiding it. This is the week where the most people consider quitting. Almost nobody who pushes through week 4 regrets staying.

Week 8: You start building things that work. Not elegant things. Not well-structured things. But things that run, that do what they are supposed to do, that you can show someone on your phone. The feeling of deploying your first live project is difficult to describe to someone who has not experienced it. Something you made is on the internet, and anyone with the URL can use it.

Week 14: You help someone else debug their code, and you realize you understood the problem before they finished explaining it. This is the moment most marathoners recognize their own growth. Teaching someone else forces you to organize your knowledge, and discovering that you can teach means you have genuinely learned.

Week 20: Your capstone project is underway. You are making architectural decisions, choosing between libraries, structuring databases, and writing code that you will have to maintain for weeks. The problems you face now look nothing like the problems from week 2. They are harder, yes, but you have the tools and the instincts to solve them. You Google less and reason more.

Week 26: You present your capstone to the cohort, mentors, and sometimes invited guests from Nairobi's tech community. Your code is not perfect. No professional's code is perfect either. But you built something real, you can explain every decision you made, and you have a GitHub history that proves you can ship software. The person who walks out of the marathon is measurably different from the person who walked in. Not because of any single lesson, but because of 6 months of compounding effort.

Key Takeaways

  • The marathon runs full days, typically 9:00 AM to 5:00 PM, with most learners putting in additional hours in the evening. Expect 50 to 60 hours of coding per week during peak project phases.
  • Mornings focus on instruction and live coding. Afternoons shift to hands-on project work, pair programming, and mentor check-ins. The ratio of teaching to building tilts heavily toward building as the weeks progress.
  • The hard parts are real: debugging frustration, imposter syndrome around week 4, and the mental fatigue of learning something entirely new every few days. The rewarding parts are also real: shipping your first live project, helping a cohort mate solve a bug, and watching your skills compound week over week.
  • The 6-month arc is intentional. Early weeks build fundamentals. Middle weeks tackle the African Stack (M-Pesa, WhatsApp, USSD). Final weeks focus on capstone projects and career preparation.
  • Community carries you through the hard stretches. The cohort model means you are never struggling alone, and the friendships formed during the marathon tend to outlast the programme itself.

Frequently Asked Questions

How many hours per day does the McTaba marathon require?
The structured day runs from approximately 9:00 AM to 5:00 PM. Most marathoners put in an additional 2 to 3 hours of independent study or project work in the evening, bringing the total to roughly 10 to 11 hours on weekdays. Weekends are officially free, but many learners use Saturday mornings for catch-up or extra project work. Expect 50 to 60 hours per week during intensive project phases. <!-- TODO: verify schedule details with team -->
Can I work a job while doing the McTaba marathon?
The full-time track is a full-time commitment, so balancing it with a demanding job is not recommended. If you are working, our part-time track (6 months, evenings and Saturdays) is designed specifically for that situation — it covers the same curriculum at a pace that works alongside employment. If even the part-time track does not fit your schedule, our self-paced Academy courses are another option.
What happens if I fall behind during the marathon?
It happens, and it is not the end of the world. Mentors track progress and will flag it early if you are slipping. The first step is usually a one-on-one conversation to figure out what is going wrong: is it a specific concept, a time management issue, or burnout? From there, you might get extra resources, adjusted deadlines on a project, or a recommendation to spend a weekend catching up on a specific module. The cohort also helps. Marathoners who are ahead often sit down with those who are behind, and the teaching benefits both sides.
Is the marathon in-person or remote?
The marathon is primarily in-person in Nairobi. Being physically present matters for pair programming, spontaneous conversations, mentor access, and the general accountability that comes from showing up to a room full of people working toward the same goal. Some components, like evening study and weekend work, naturally happen remotely. <!-- TODO: verify schedule details with team -->

Ready to build real-world apps?

Join the McTaba Labs full-stack marathon (4 months full-time · 6 months part-time). Learn M-Pesa, USSD, and WhatsApp engineering while shipping 8 production apps.

Apply to the McTaba Marathon