DEV Community

Manabi
Manabi

Posted on

I teach DevOps. Two weeks later, they can't do it. So we're building the practice layer.

A note from Manabi's founder, Tobi.

I teach DevOps for a living: Linux, Git, Docker, CI/CD, Terraform, Kubernetes. I'm good at the teaching part. Here's the part I keep losing: two weeks after a module ends, half the cohort can't do the thing I taught them.

Not because the explanation was bad. Because watching me fix a broken environment isn't the same as fixing one, and the fixing is where it sticks. There's a layer missing between "I taught it" and "they can do it." A practice layer. And almost nobody has one.

The content was never the problem:
There are thousands of hours of good Docker videos on YouTube. The explanation is solved. What's not solved is the gap between watching someone do a thing and doing it yourself, because that gap is exactly where learning actually happens, and it's exactly the part most courses leave empty.

You can watch fifty hours of tutorials and still freeze the first time a real environment breaks on you. Watching isn't doing. The only thing that closes the gap is fixing broken things with your own hands, in a place where it's safe to break them.

Where do you actually practise?
So I went looking for where a student is supposed to practise. Here's what's on offer:

  • Cloud-account labs. Good, hands-on, validated. Also: "Step 7, provision an EKS cluster." That's a credit card, a real bill, and a sign-up flow, for someone whose whole reason for self-teaching is that they can't yet afford the certification. I've watched students bounce off the billing screen.

  • Browser playgrounds. Genuinely useful, but time-limited and ephemeral. The session expires, your progress is gone, and you're at the mercy of someone else's servers being up. - "Just spin it up yourself." Sure, once you already know enough to spin it up yourself. That's the chicken-and-egg. The people who most need a practice environment are the people least equipped to build one.
    None of these is bad. But notice who a student with a weak laptop, no cloud budget, and a flaky connection is left with: video they can't practise against. Watching, not doing. The practice layer is still missing.

So we're building the practice layer:
It's a small command-line tool. You install it once. You point it at a curriculum, which is just a Git repository someone wrote, and it spins up a real, deliberately broken environment, hands you the task, and runs a validator that tells you pass or fail. No account. No credit card. No timer. Your progress lives on your laptop.

The design choice we care about most: the engine doesn't know or care what subject a lesson teaches. A validator is just a script that exits 0 or 1. That means the same tool runs a Docker lesson, a Linux-permissions lesson, a SQL-injection lab, or a frontend layout fix, anything you can check with a script. The first curriculum we're shipping is DevOps, because that's what I teach. The interesting part is everything that isn't DevOps, written by people who aren't us. And the curriculum is yours. It lives in your own Git repo, public or private, on your IP. It runs locally and never touches a Manabi server, because there isn't one. For instructors with private course material, that matters: your bootcamp content stays your bootcamp content.

The model isn't new:
Here's the part where, if you were learning Kubernetes between 2018 and 2022, you already
know what I'm talking about. There was a platform called Katacoda. You opened a page, you got a real environment, you fixed the broken thing, and an automated check told you whether you actually fixed it. Millions of people learned that way. O'Reilly acquired it, and in 2022, they shut the public version down.
We're not claiming we invented the model, and we're not nostalgic about it. We bring it up because it's proof: the broken-state-then-validate loop isn't a pet theory, it's a thing that demonstrably worked at scale. The lesson we took from its shutdown isn't "rebuild Katacoda." It's that the model deserved a form nobody can switch off, something open, that runs on the learner's own machine, that doesn't depend on any company's billing department continuing to care.

And yes, the setup problem too:
The thing that used to eat the first forty-five minutes of every module, someone's WSL2 misbehaving, someone on an M1 with an image that won't pull, someone who followed a blog post written for a different OS version, that's also solved. Same reproducible lesson on every laptop in the cohort, because it reproduces in a container, not on a wiki page. That's not why we built this. But it's a welcome side effect of building the practice layer properly.

Where it actually is:
We're being honest about that: it's early, it's a single first curriculum, and the list of things it doesn't do yet is longer than the list of things it does. We'd rather tell you that now than oversell it and lose you on the first rough edge.

Follow along:
We're building this mostly in the open over the next few weeks, heading toward a first public release. If "a free, local, no-account practice layer that makes what you teach actually stick" is something you'd have wanted, as an instructor, or for your students, I'd genuinely like you along for it.
We'll post the progress here and share the install command the moment it's ready. Started by an instructor who got tired of teaching things that didn't stick.

Top comments (0)