Build to understand

ABC of Programming is a set of hands-on modules built around solving problems and discovering the concepts along the way. No videos to watch, no badges to earn.

Build it yourself

Each problem extends what you've already built. By the end of a module, you've made something complete that you understand from the inside out.

No hidden magic

A closure isn't magic that 'remembers' variables. It's a function bundled with its environment, and you build exactly that.

Nothing to memorize

No sign-up, no video lectures, no gamification. You work through problems and build understanding by doing, not by being told.

Featured Module

Build an Interpreter

End up with a working language

Build a small language you can actually run, one that handles variables, functions, and data structures. You grow it from scratch, one capability at a time, starting with evaluating a single number.

JavaScript Environments Closures Recursion
Start this module

Work through problems in your browser with instant feedback.

View Module

Who this is for

If you'd rather build something than watch a video explaining it, this is for you. Maybe you want to understand a subject deeply instead of just getting through it, or maybe you just enjoy taking things apart to see how they work. Both belong here.

How it works
  1. 1

    Open a module

    Each module builds one complete system from scratch.

  2. 2

    Solve problems in order

    Every problem extends your previous code, guided by tests.

  3. 3

    Understand from the inside

    No black boxes. You wrote every line, so you know how it works.

No sign-up. Open the module and start building.

More modules in development.