Learn Go from first principles — read a little, write a lot.
A hands-on Go course. Each lesson pairs a short, focused read with exercises you solve right in the browser: real Go code, graded by real Go tests. 65 lessons take you from setting up the toolchain and first principles — syntax, types, control flow, functions — through collections, methods, interfaces, errors, and generics, into concurrency, and out the other side with the standard-library skills working Go programmers use daily: JSON, testing, io, time, and building HTTP services.
Start reading →Getting Set Up
Getting Started
Control Flow & Functions
Errors and Generics
Composition & Embedding
Advanced Error Handling
Goroutines and Channels
Coordination
Concurrency Patterns
Atomic Operations and RWMutex
The Standard Library
Readers & Writers
JSON in Depth
Testing in Depth
Time & Timers
Building HTTP Services
Packages & Project Layout
Debugging Someone Else's Code
Files and the os Package
Outbound HTTP