Source: https://mokxi.com/learn/coding
Updated: 2026-11-11

All courses
Coding track

# Learn to code, on boards that show what your code did

Python and C++ from your first print to classes, tests and state machines. Every program runs on a simulated board, so a bug is something you can see.

Free 7 courses, 56 lessons, about 41 hours 3 levels

Start at the first rung Python from zero

The track

## Zero to expert, one course at a time

Most coding courses end at text on a screen. Here your program lights an LED, reads a button or drives a display, and the simulator checks each step, so you know when you got it right and you can see exactly what went wrong when you did not.

Start with Python on a Raspberry Pi or C++ on an Arduino Uno, with no experience needed for either. The track then climbs to the habits working programmers use: classes, references, ring buffers, templates, tests and code split so it can be tested away from the hardware.

The ladder

## Every course, by level

Take them in order, or start on the rung that matches what you already know. Each course page lists every lesson.

Level 1

### Start from zero

Your first language, one idea per lesson.

7 lessons · 5 h · Raspberry Pi 4 Model B

### Python from zero

Beginner Python on a Raspberry Pi: print, variables, decisions, loops, lists, functions, dicts and strings, then a button with gpiozero and a working pedestrian crossing.
Open the course

13 lessons · 10 h · Arduino Uno R3

### C++ on a board

The language, one idea per lesson, on a board that shows you what your code did.
Open the course

Level 2

### Build real programs

Find bugs from evidence, then write code that stays sane as it grows.

8 lessons · 1 h · Arduino Uno R3

### Fix the bug

Short puzzles on an Uno: one planted fault each, in the wiring or the code. Find it, fix it, and see it work.
Open the course

7 lessons · 6 h · Arduino Uno R3

### C++ that scales

The habits that keep a big program sane, on the Uno: references and const, classes, a ring buffer, a state machine class, templates, and logic split from pins so it tests itself. Ends with a tested calculator.
Open the course

7 lessons · 6 h · Raspberry Pi 4 Model B

### Python with real habits

Advanced Python on a Raspberry Pi, after Python from zero: modules, classes, exceptions, files and logging, tests with plain assert, generators, and a sensor logger that uses them all.
Open the course

Level 3

### Expert

The data structures, algorithms and design habits interviews ask about.

7 lessons · 6 h · Arduino Uno R3

### Data structures and algorithms

The ideas every programmer is asked about, built and measured on an Uno: big O, linked lists, stacks and queues, hash maps, sorting and binary search. Ends with a leaderboard that needs them all.
Open the course

7 lessons · 7 h · Arduino Uno R3

### Software design and testing

How teams keep firmware right as it grows: readable code, modules behind narrow interfaces, fakes, tests on boot, test-first fixes, safe refactors and code review. Ends with a messy sketch refactored under test.
Open the course

Outcomes

## What you will be able to do

- Write Python with variables, loops, functions, dicts, classes, exceptions and tests.
- Write C++ that knows the size of its types, uses pointers and structs, and splits into headers.
- Find a bug from the evidence instead of guessing, in the wiring or the code.
- Structure a bigger program with classes, a state machine and logic you can test without the board.

Careers

## Where this track leads

The jobs these skills are used in every day, with what each one does and how to get there.

Career

### Software developer

Write, test and ship the programs people use every day.
See the career

Career

### IoT and connected devices developer

Build devices that sense the world and talk to apps over Wi-Fi.
See the career

Career

### Embedded firmware engineer

Write the code that runs inside cars, drones, watches and every smart gadget.
See the career

Topics

## Looking for something specific?

Each of these starts you on the right course and lesson for one subject.

Learn Python

### Learn Python free, with code that lights things up

Beginner to real habits on a simulated Raspberry Pi: print and loops first, then classes, exceptions, logging and tests, with LEDs and buttons to show it working.
Start here

C++ for embedded

### Learn C++ for embedded systems, on a board

Types with a size, pointers and structs first, then references, classes, ring buffers, templates and code you can test without the hardware.
Start here

Debugging practice

### Arduino debugging practice with real planted bugs

Short puzzles with one fault each, in the wiring or the code. Then the meter, scope and Serial habits that find bugs from evidence.
Start here

For programmers

### Electronics for programmers

You already think in state, timing and interfaces. This route maps them onto current, voltage, pull-ups and buses, with code you can read on a simulator that shows each wire.
Start here

Questions

## About the coding track

Do I need to know any code before I start?

No. Python from zero and C++ on a board both start with a program of one line and build from there, one idea per lesson.

Should I learn Python or C++ first?

Either works. Python reads more like plain English and is a good first language. C++ is what most microcontrollers run, so pick it if you want to build devices. The ideas carry over both ways.

Why learn to code on a simulated board?

Because you can see what your code did. A loop that runs one time too many blinks one time too many, and a wrong comparison leaves a light on. That makes bugs easier to find and the ideas easier to remember.

Do I need to install anything?

No. Everything runs in your browser on a laptop, a Chromebook or a tablet, and your progress is kept so you can stop after any lesson.

Tracks

## The other tracks

16 courses, 126 lessons, about 97 hours

### Embedded track

Arduino, ESP32, Raspberry Pi Pico and STM32: pins, timing, buses, motors, WiFi, registers and debugging, every lesson checked on a simulated board.
See the track

11 courses, 102 lessons, about 60 hours

### Electrical track

Current and voltage you can see, then transistors, op-amps, filters, power and PCBs. Every circuit runs in a real circuit simulator in your browser.
See the track

21 courses, 141 lessons, about 98 hours

### Maker track

Follow the starter kit you already own, then build a claw machine, a balance bot, a handheld console or an LED cube, each a short course checked by the simulator.
See the track

15 courses, 107 lessons, about 82 hours

### Robotics track

Motors, servos, sensors and PID control loops, then a rover, a claw machine and a balance bot, every lesson checked on a simulated board.
See the track
