DEV Community

Cover image for How Zone01 Kisumu "Build from Scratch" Approach Transformed Me from a Framework User to a Problem Solver
Kevin Nambubbi
Kevin Nambubbi

Posted on

How Zone01 Kisumu "Build from Scratch" Approach Transformed Me from a Framework User to a Problem Solver

The Moment I Realized I Didn't Really Know JavaScript
I was 2 months into learning JavaScript. I could use .map(), .filter(), .reduce() like any bootcamp grad. I felt confident.

Then my instructor asked me one question:

"How does .reverse() actually work?"

I froze.

I had used it hundreds of times. But I had no idea what was happening inside. I was a user, not a builder.

That was the day everything changed.

The 01EDU Difference: Build Tools, Not Just Use Them
Most coding courses teach you to use built-in methods. 01EDU does something different.

They disable the built-in methods.

Then they say: "Now build it yourself."

No .split(). No .join(). No .indexOf(). No .slice().

Just you, a text editor, and your brain.

What I Built in 2 Weeks (Without Using Built-ins)
Here are the JavaScript methods I re-created from scratch:

Method What I Learned
abs() Math is logic, not magic
multiply(), divide(), modulo() Arithmetic is repeated addition/subtraction
indexOf(), lastIndexOf(), includes() Searching is just looping and comparing
slice() Negative indexes count from the end
reverse() Arrays and strings are both indexed collections
join() Building strings step by step
split() Parsing is character-by-character inspection
round(), floor(), ceil(), trunc() Decimals are just numbers between whole numbers
Each function took hours of thinking, failing, debugging, and finally — understanding.

The Most Painful Lesson: Loops
The first time I tried to build repeat() without using .repeat(), I wrote an infinite loop.

My computer froze. I had to force restart.

That failure taught me more than any working code ever could. I learned to trace each iteration mentally. I learned to check my exit conditions. I learned to respect the loop.

You don't truly understand loops until you've crashed your computer with one.

What 01EDU Taught Me That No Bootcamp Could

  1. I learned how computers think, not just how to write code

When you build .split() from scratch, you understand string parsing at a deep level. You know that every character is checked, one by one. You know that separators are just conditional triggers.

  1. I stopped fearing errors

Error messages became my teachers. Each "undefined" or "not a function" showed me exactly where my mental model was wrong. I learned to read the stack trace before asking for help.

  1. I can now learn any language faster

When I look at Python or Go, I don't see strange syntax. I see loops, conditions, and variables — the same building blocks I already mastered.

  1. I interview differently

When an interviewer asks "How does array.map() work?", I don't just describe its behavior. I explain the loop, the callback, the new array creation, and the return. I've actually built it.

The Hard Truth: Shortcuts Create Ceilings
Using built-in methods is like using a calculator. It's fast. It's efficient. But if you never learn long division, you'll never truly understand numbers.

The same applies to code.

If you only use .sort(), you won't understand sorting algorithms

If you only use .split(), you won't understand string parsing

If you only use Math.round(), you won't understand floating-point math

Built-in methods are not the enemy. But they should be earned, not given.

How You Can Do This Too (Without Enrolling in 01EDU)
You don't need a special school to learn this way.

Try this challenge:

For one week, pretend these methods don't exist:

.map(), .filter(), .reduce()

.split(), .join()

.indexOf(), .includes()

Math.round(), Math.floor(), Math.ceil()

.slice(), .reverse()

Build your own versions. Use only loops, conditionals, and basic math.

You will struggle. You will feel slow. But after one week, you will understand JavaScript better than most developers with years of experience.

What's Next for Me
I am now building:

My own map() and filter()

A deep understanding of recursion by building tree traversal

A basic promise implementation to understand async JavaScript

Each one is harder than the last. But that's the point.

The goal is not to finish. The goal is to understand.

Top comments (1)

Collapse
 
harjjotsinghh profile image
Harjot Singh

The framework-user-to-problem-solver shift is the single most valuable thing a build-from-scratch program teaches, and it matters more now, not less, in the AI era. When you've built the thing the framework abstracts (your own router, your own state management, your own auth flow) you understand what's actually happening underneath, which means you can debug when the abstraction leaks and you can tell when AI-generated code is subtly wrong. Framework-users who never went underneath are exactly the people who get stuck when Copilot produces something that looks right and isn't, because they have no mental model to check it against. The from-scratch foundation is what lets you supervise the tools instead of being at their mercy.

This is why I think the highest-value skill is shifting from "can you write it" to "can you judge whether it's right" - and a from-scratch education builds exactly that judgment. It's the bet behind Moonshift, the thing I work on - a multi-agent pipeline that takes a prompt to a deployed SaaS, where the verify layer plays the role of the experienced problem-solver checking the generated output, because someone (or something) with real understanding has to gate it. Multi-model routing keeps a build ~$3 flat, first run free no card. Love this reflection. Now that you build from scratch, has it changed how you use AI tools - more as a fast junior whose work you verify, than an oracle? That's the shift I'd expect.