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 coursePython 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.
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.
Take them in order, or start on the rung that matches what you already know. Each course page lists every lesson.
Your first language, one idea per lesson.
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 courseThe language, one idea per lesson, on a board that shows you what your code did.
Open the courseFind bugs from evidence, then write code that stays sane as it grows.
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 courseThe 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 courseAdvanced 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 courseThe data structures, algorithms and design habits interviews ask about.
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 courseHow 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 courseThe jobs these skills are used in every day, with what each one does and how to get there.
Write, test and ship the programs people use every day.
See the careerBuild devices that sense the world and talk to apps over Wi-Fi.
See the careerWrite the code that runs inside cars, drones, watches and every smart gadget.
See the careerEach of these starts you on the right course and lesson for one subject.
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 hereTypes with a size, pointers and structs first, then references, classes, ring buffers, templates and code you can test without the hardware.
Start hereShort puzzles with one fault each, in the wiring or the code. Then the meter, scope and Serial habits that find bugs from evidence.
Start hereYou 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 hereNo. Python from zero and C++ on a board both start with a program of one line and build from there, one idea per lesson.
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.
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.
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.
Arduino, ESP32, Raspberry Pi Pico and STM32: pins, timing, buses, motors, WiFi, registers and debugging, every lesson checked on a simulated board.
See the trackCurrent 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 trackFollow 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 trackMotors, 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