Bonaventure OgetoBy Bonaventure Ogeto|

Small Wins That Keep You Coding When Motivation Dies

Small wins that sustain coding motivation include: seeing your first HTML page render in a browser, changing a CSS colour and watching it update instantly, writing a function that returns the correct output, deploying a project to a live URL, receiving your first code review, getting your first "like" on a public project post, and earning your first KES from a client. Each win reinforces the belief that progress is happening, even when it feels slow.

The Day Motivation Disappears

Day 1 of learning to code is electric. You watched a video. You downloaded VS Code. You wrote your first HTML file and a heading appeared in the browser. You felt like a genius. You told your friend "I am going to be a developer." You went to bed excited.

Day 14 is different. JavaScript is not cooperating. Your function returns undefined for the third time today. The tutorial that was supposed to take 30 minutes took two hours. Your friend asked what you are building and you could not explain it in a way that sounded impressive. You went to bed wondering if this is actually for you.

Day 14 is where motivation dies. Not slowly. Abruptly. The excitement is replaced by frustration, and frustration has no inspirational soundtrack.

This is normal. Not "normal" in the vague, unhelpful way. Normal in the "this happens to literally every person who learns to code" way. Motivation is a starting emotion. It is not a sustaining one. You cannot run a six-month coding journey on motivation any more than you can run a matatu from Nairobi to Mombasa on the fumes left after the petrol light comes on.

You need fuel. Small wins are that fuel.

The Small Wins That Matter Most

A small win is any moment where you see tangible evidence that you have progressed. Not abstract progress like "I understand JavaScript better." Tangible progress. Something you can point at.

Win 1: Your first web page loads. You type HTML into a file, open it in a browser, and a heading appears. It is ugly. It is basic. It is yours. You made something appear on a screen by typing instructions. That is magic, even if it does not feel like it yet.

Win 2: You change a colour. You add one line of CSS and the background changes from white to blue. The instant visual feedback is addictive. This is why CSS is the most satisfying part of the first month. You type, you save, you see the change. Immediate reward.

Win 3: A function works on the first try. You write a JavaScript function. You call it. It returns the right value. No errors. No undefined. Just the correct output. This win is rare enough in the early weeks to feel genuinely thrilling.

Win 4: You fix a bug yourself. You have been stuck for an hour. You read the error message one more time. You check your brackets. You find the typo. The code runs. The relief is physical. You did not ask Stack Overflow. You did not ask ChatGPT. You found it yourself.

Win 5: You deploy to a live URL. Your project is on the internet. You send the link to your friend. They open it on their phone. It works. Something you built exists in the world and anyone with the link can see it. This is the win that separates "I am learning" from "I am building."

Win 6: Your first M-Pesa from code. Someone paid you for something you built. KES 5,000. KES 10,000. The amount does not matter. The confirmation message on your phone is proof that this skill has market value.

Why You Must Celebrate Deliberately

Most small wins pass uncelebrated. You fix a bug and immediately move to the next problem. You deploy a project and open the next tutorial. You earn your first KES and start worrying about the next client.

Uncelebrated progress feels like no progress. Your brain does not register achievement unless you pause and acknowledge it. This is not soft psychology. This is how dopamine works. Your brain releases dopamine, the motivation chemical, when it recognises a completed goal. But if you never pause to recognise the completion, the dopamine does not fire, and you lose the motivational boost that should carry you into the next challenge.

How to celebrate small wins:

  • Screenshot everything. Every deployed project. Every client message. Every working function. Save them in a folder called "Wins" on your phone. Open it when you are doubting yourself.
  • Share publicly. Post a tweet or a status update: "Just deployed my first React project." The likes and replies are external validation that your brain registers as achievement.
  • Tell one person. Not someone who will say "what is React?" Tell another learner, a mentor, or someone in your cohort who understands why this matters. Their recognition amplifies the win.
  • Keep a progress journal. A simple note on your phone: "Week 1: Built first HTML page. Week 3: Wrote my first JavaScript function. Week 6: Deployed a React project." When you re-read this list after three months, the growth is undeniable.

Design Your Learning to Produce Wins Early and Often

Not all learning paths are equal when it comes to small wins. Some courses make you watch four hours of theory before you write a line of code. Others have you building something in the first 15 minutes.

Choose the second kind.

freeCodeCamp starts you building immediately. Every lesson ends with a working output. The Odin Project includes projects at the end of each section. McTaba's bootcamp is project-based from week 1. These formats produce frequent small wins because they are designed around doing, not watching.

Avoid learning paths that postpone building:

  • A 10-hour lecture series with no exercises until the end.
  • A textbook that covers theory for 200 pages before showing code.
  • A course that teaches five languages superficially instead of one language deeply enough to build with.

You need wins every session. Not every week. Every session. Even if the win is small, like making a button change colour on click, it needs to happen within the time you sit down to code. Otherwise your brain has no evidence that the session was worthwhile, and tomorrow it will resist sitting down again.

How Small Wins Compound Into Confidence

One small win means nothing. A hundred small wins over six months change your identity.

After your first web page, you think "I can make things appear on a screen." After your first deployed project, you think "I can build things that live on the internet." After your first paid client, you think "I can earn money from this skill." Each thought builds on the last, and the cumulative effect is confidence. Not the fake confidence of motivational speakers. The real confidence of someone who has evidence.

This is why consistency matters more than intensity. A person who codes for 90 minutes every day for six months accumulates hundreds of small wins. A person who does a single 12-hour coding marathon and then does nothing for a month has a handful of wins that fade from memory before the next session.

The marathon runner does not remember any single kilometre. They remember the finish line, which only exists because of every kilometre before it. Your small wins are the kilometres. The confidence at the end is the finish line.

Keep going. Not because you feel motivated. Because the next small win is one function, one CSS change, one deployed page away. And that win is the fuel for the one after it.

Key Takeaways

  • Motivation is a spark. Small wins are fuel. The spark gets you started, but without fuel, the fire dies within weeks.
  • A small win is any visible evidence that you are making progress: a page that loads, a function that works, a bug you fixed, a project you deployed.
  • Celebrate small wins deliberately. Screenshot them. Share them. Write them down. Uncelebrated progress feels like no progress at all.
  • Design your learning to produce small wins frequently. Short tutorials that end in a working output are better than long courses that only show results after weeks.
  • The gap between "I cannot do this" and "I just did this" is often a single function that works. That function is a small win, and it carries more motivational power than any YouTube speech.

Frequently Asked Questions

How do I stay motivated to learn coding when it gets hard?
Do not rely on motivation. It disappears around week 2 to 3 for most learners. Instead, focus on producing small wins every session: a function that works, a bug you fixed, a page you deployed. These tangible achievements sustain your effort when motivation does not. Screenshot and celebrate them deliberately.
What counts as a small win in coding?
Any visible evidence of progress: a web page that loads, a function that returns the right value, a bug you fixed without help, a project deployed to a live URL, a post that gets encouraging engagement, or money earned from a client. The win does not need to be impressive. It needs to be real.
Why do I feel like I am not making progress even though I am coding every day?
Because you are not pausing to recognise your achievements. Progress in coding is gradual and often invisible day to day. Keep a progress journal and compare where you are now to where you were a month ago. The gap is usually much larger than you think. Your brain needs you to explicitly acknowledge wins for the motivational effect to register.
How often should I see progress when learning to code?
You should produce at least one small win per coding session. If your learning materials do not give you a working output within 60 to 90 minutes, switch to a more project-based curriculum. freeCodeCamp, The Odin Project, and McTaba are designed to produce frequent, tangible results.

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