Beginner to hired — in runnable code.
Pick a language, run real code in the browser, and get graded as you go — backed by mentors across every speciality. You write working code from the very first lesson.
// sum only the even numbers
const evenSum = (xs) =>
xs.filter((n) => n % 2 === 0)
.reduce((a, b) => a + b, 0);
- evenSum([1,2,3,4]) → 6
- evenSum([]) → 0
- ignores the odd numbers
# sum the squares of the even numbers
def even_squares(nums):
return sum(n*n for n in nums if n % 2 == 0)
- even_squares([1,2,3,4]) → 20
- even_squares([]) → 0
- skips the odd numbers
// turn a title into a URL slug
function slugify(string $t): string {
return preg_replace('/[^a-z0-9]+/', '-', strtolower(trim($t)));
}
- slugify("Hello World") → "hello-world"
- trims the surrounding spaces
- collapses symbols to dashes
// Max returns the larger of two ints
func Max(a, b int) int {
if a > b { return a }
return b
}
- Max(2, 9) → 9
- Max(-1, -4) → -1
- Max(5, 5) → 5
# count the palindromes in a list
def palindromes(words)
words.count { |w| w == w.reverse }
end
- palindromes(["level","cat"]) → 1
- palindromes([]) → 0
- is case-sensitive
// an HTTP handler that echoes JSON
export default (req, res) => {
res.json({ ok: true, path: req.url });
};
- responds with 200
- body has ok: true
- echoes the request path
JavaScript The language of the web — from the DOM to full front-end apps. 6 courses View courses
A place to learn the craft, and a bench of people who already have.
Structured, runnable, graded.
The core of the platform. Each course is authored by our AI engine, curated by hand, and delivered as runnable lessons — not slides.
- Write and run real code in the browser
- Automated checks grade every step
- Projects and verifiable certificates
- Guided paths toward a specific role
A deep bench, by speciality.
Mentors are organised by discipline and speciality — never shown by name. You're matched to the right person for your goal, from a broad bench.
- Specialities spanning the whole stack
- Book around an outcome, not a profile
- Async review or a live session
- Matched to where you are and where you're headed
From sign-up to certificate, one clear loop.
Sign up
Google sign-in. Progress saved from your first lesson.
Enrol
Pick a course or a path built around a real project.
Learn
Write code in the browser. The sandbox checks each step.
Track
Mastery and progress update as you go.
Certificate
Finish the project, earn a verifiable certificate.
Mentors across every corner of the stack.
Mentors are shown by speciality only. You're matched to the right person for your goal — never asked to pick a name off a page.
Find a mentorStart where you are. Build toward the role you want.
JavaScript, from scratch
Variables to functions to the DOM — every concept run and checked in the browser.
Backend APIs with PHP
Routing, data, and a real JSON API — built the way production services actually are.
Python for data work
Clean, transform, and reason about data with a Python executor grading every step.
Your work is graded the moment you run it.
No setup, no "works on my machine". Write code, run it, and see exactly what passed and what didn't — the same loop, every lesson.
Runs in your browser
JavaScript, React and PHP need nothing installed.
Sandboxed executor
Python and Bash run safely on our side, results streamed back.
Checks, not vibes
Every lesson defines what "correct" means and tells you plainly.
Always know what's next
Mastery updates as you go, so the path stays clear.
# reverse a string without slicing
def reverse(s):
out = ""
for ch in s:
out = ch + out
return out
- reverse("code") → "edoc"
- reverse("") → ""
- reverse("a") → "a"
Stuck on an error? Start here.
Thousands of real error messages, explained and corrected — the same fixes our courses teach. Search the message, get the cause and the correction.
Write your first graded lesson today.
Create an account, open the sandbox, and get a real check on real code in minutes. Add mentorship whenever you want a human in the loop.
Free to start — upgrade only when you're ready to earn a certificate.