The Go Programming Language
by Alan A. A. Donovan, Brian W. Kernighan · Donovan & Kernighan
Reference text by Donovan and Kernighan covering the language from basics through packages, testing, reflection, and concurrency with goroutines and channels. Exercises throughout build the ability to write and structure substantial Go programs.
This link may earn us a small commission at no extra cost to you. Affiliate disclosure
More resources on Go
Go Playground
The official Go sandbox, hosted by the Go team: write, compile, run, and share short programs in the browser without installing a toolchain. Useful for testing language behavior, concurrency snippets, and standard library calls quickly.
Effective Go
Official Go documentation covering idiomatic style and conventions: naming, formatting, control structures, methods, interfaces, embedding, and concurrency patterns. After reading it you can write code that matches what experienced Go programmers expect to see.
A Tour of Go
Learn Go with A Tour of Go! This hands-on course from the Go Team guides you through the fundamentals of the Go programming language.
Go in Action
Manning title for programmers who already code, explaining Go's type system, packaging, concurrency model, channels, and testing tools. It emphasizes how the runtime schedules goroutines and how to structure idiomatic, production oriented Go applications.