Learn by doing
Courses
Start with Programming and Computers, or browse every course at your own pace.
Recommended Path
Start here
Start with Programming and Computers, then keep moving through TypeScript, electricity, microcontrollers, and system design.
TypeScript
Learn TypeScript from variables to generics, with coding challenges you solve directly in your browser.
Electricity and Current
Learn how electricity works, from voltage, current, and resistance to circuits, Ohm's law, and common components like resistors, LEDs, and capacitors.
Microcontrollers
From GPIO pins and breadboard circuits to sensors, displays, motors, and communication protocols like I2C, SPI, and UART.
System Design
Learn how APIs, databases, caching, and load balancing fit together to build scalable systems.
All Courses
All courses
Browse the full catalog, including the starter courses and every specialty topic.
Dart
An interactive Dart course where you code, test, and build apps directly in your browser.
Flutter
An interactive Flutter course where you code, test, and build apps directly in your browser.
S.O.L.I.D Principles in OOP
Learn the principles of how software should be structured, so you can guide AI to build better systems.
D.R.Y. (Don't Repeat Yourself)
Learn to identify and eliminate code duplication, making your codebase cleaner and easier to maintain.
TypeScript
Learn TypeScript from variables to generics, with coding challenges you solve directly in your browser.
System Design
Learn how APIs, databases, caching, and load balancing fit together to build scalable systems.
Microcontrollers
From GPIO pins and breadboard circuits to sensors, displays, motors, and communication protocols like I2C, SPI, and UART.
Electricity and Current
Learn how electricity works, from voltage, current, and resistance to circuits, Ohm's law, and common components like resistors, LEDs, and capacitors.