Tools
Sign InSign Up
Notifications 0
Learn by doing. Ada helps when you’re stuck.
Hands-on courses for system design, Python 3, Rust, Go, Shell, and MongoDB. Run real code in your browser and talk to Ada, your AI coding mentor — she understands the lesson, your code, and its output, without giving away the answer.
- Real sandboxed execution
- Conversational help from Ada
- Step-by-step lessons
- Progress saved as you go
Practice beats passive reading
Every concept comes with a runnable example you can edit on the spot.
Run as you learn
Execute code in a real sandbox after every concept — see results immediately.
Ask Ada when you’re stuck
Your conversational coding mentor sees the lesson and your latest run, then gives the smallest useful nudge.
Track your progress
Lessons you complete are saved to your account so you never lose your place.
Same engine as the IDE
What you learn maps one-to-one to the full Codeground editor and workspaces.
Find your next course
Search by language, topic, or skill level — beginner to expert. First lesson free in every course.
System Design Dojo
Draw it. Argue it. Survive the follow-up.
Try free lesson →Debugging Dojo · Python
Observe. Hypothesize. Fix — Python logic, state, and sharp edges.
Try free lesson →Python 3 Fundamentals
From "what is a variable?" to FizzBuzz — with jokes.
Try free lesson →System Design Dojo II
Harder boards. Messier tradeoffs. Interviewer energy turned up.
Try free lesson →Debugging Dojo · Node.js
Observe. Hypothesize. Fix — JavaScript types, async, and API traps.
Try free lesson →Python 3 Intermediate
Comprehensions, OOP, files, and the standard library rabbit hole.
Try free lesson →Debugging Dojo · Go
Observe. Hypothesize. Fix — slices, maps, and Go idioms.
Try free lesson →Python 3 Expert
Async, typing, dunder methods, and the GIL — for the brave.
Try free lesson →Debugging Dojo · Java
Observe. Hypothesize. Fix — objects, collections, and numeric traps.
Try free lesson →Rust First Steps
Hello Cargo, types, and your first fight with the borrow checker.
Try free lesson →Rust Essentials
Ownership deep dive, enums, pattern matching, and Result.
Try free lesson →Rust Systems Mastery
Lifetimes, smart pointers, concurrency, and controlled unsafe.
Try free lesson →MongoDB Basics
Documents, queries, and the joy of schemaless (until you need a schema).
Try free lesson →MongoDB Intermediate
Indexes, schema design, relationships, and text search.
Try free lesson →MongoDB Production
Transactions, replication concepts, sharding, and change streams.
Try free lesson →Go Fundamentals
From Hello, world to slices, structs, and if err != nil.
Try free lesson →Go In Depth
Pointers, interfaces, goroutines, channels — the good stuff.
Try free lesson →Go Production Mastery
Context, sync, generics, HTTP, profiling — ship it like Google intended.
Try free lesson →Shell Scripting Fundamentals
Bash basics — echo, variables, loops, and the art of quoting.
Try free lesson →Shell Scripting Pro
Parameter expansion, arrays, traps, and text processing.
Try free lesson →Shell Production Mastery
Strict mode, security, portability, and scripts that survive prod.
Try free lesson →Python Craft & Sharp Edges
Mutable defaults, slots, descriptors, and the traps senior devs still step in.
Try free lesson →Rust Sharp Edges
Copy vs Clone, ! type, Pin, Cow, and patterns the book glosses over.
Try free lesson →Go Nitpicks & Craft
nil interfaces, range loops, defer traps, JSON tags, and production idioms.
Try free lesson →Shell Sharp Edges
IFS, pipefail, traps, POSIX vs Bash, and production scripting landmines.
Try free lesson →MongoDB Craft & Gotchas
Type quirks, partial indexes, $expr, collation, and explain plans ops actually use.
Try free lesson →Questions, answered
Ready to write your first lines?
Start a course now — it runs entirely in your browser.
Choose a course