100 Go Mistakes and How to Avoid Them (opens provider site in a new tab)
Catalogs subtle bugs experienced Go developers still write. Reading it prevents real outages.
Simple, fast, concurrent — the language of cloud infrastructure.
16 picks · 11 free · 12 providers · curated by Rowland Kuru
Editor's intro
Go was designed at Google to be boring in the best way: a small language, fast compiles, a strong standard library, and concurrency built in. It dominates cloud infrastructure — Docker, Kubernetes, and Terraform are all written in it — and it's one of the quickest languages for an experienced programmer to become productive in.
Take the Tour of Go first; it's short. Then read Effective Go and build something with only the standard library before reaching for frameworks. Intermediate picks cover testing, concurrency patterns, and project structure. The advanced resources are for people building high-throughput services or trying to understand exactly what the runtime guarantees.
Start here
A Tour of Go is the official, interactive introduction, and it's the right first step whether or not you've programmed before. Every page has a runnable example in the browser, so you can change code and see the result without installing anything. It covers the entire language — types, methods, interfaces, generics, goroutines, and channels — in a few evenings. When you finish, install Go locally, write a small command-line tool, and move on to Go by Example and Effective Go.
Catalogs subtle bugs experienced Go developers still write. Reading it prevents real outages.
Partner Some links on this page are affiliate links, marked Partner. Commissions fund the site at no cost to you. Read our affiliate disclosure.
The whole language, which is small, plus the standard library basics. A few weeks for an experienced programmer.
Annotated example programs for every common task. The page you'll keep open in a tab.
Teaches Go and test-driven development together. Good habits from the very first chapter.
Stephen Grider's diagrams make interfaces, goroutines, and channels intuitive. Best for visual learners.
Short browser exercises on syntax and basics. A warm-up before building anything real.
UC Irvine's structured introduction, including concurrency. Good if you want graded assignments.
Idiomatic style, testing, concurrency patterns, and building services with the standard library.
How to write Go the way Go programmers expect. Short, and still the style guide everyone cites.
Mentored exercises that nudge you toward idiomatic, well-tested Go.
Rob Pike's classic talk on goroutines and channels. Still the best mental model for Go concurrency.
Official deep-dives on generics, errors, modules, and tooling. Read the posts about features you use.
Builds a production-quality web app with only the standard library. Clear, practical, and current.
The classic Go book. Predates generics, but its chapters on interfaces and concurrency hold up.
The memory model, the spec, and the subtle mistakes that cause production incidents.
Catalogs subtle bugs experienced Go developers still write. Reading it prevents real outages.
Essays on API design, error handling, and performance from a longtime Go contributor.
What's actually guaranteed when goroutines share data. Essential before writing lock-free code.
Short enough to read in an afternoon — rare for a language spec, and worth doing once.