Skip to content

Go for Mere Mortals

Plain-language guides to the Go programming language, written for people who want a fast, simple language that stays out of the way — no CS degree required.

No jargon without an explanation. No "it's simple, just..." Every concept starts with the idea, then the code.

One honest note up front: Go is deliberately small. It has fewer features than most languages its age — no generics until recently, no exceptions, no classes. That's a design choice, not a gap: the language trusts you to write boring, readable code. If you like clever abstractions, Go will frustrate you. If you like code you can still read in six months, you'll feel at home.

Start here

  1. What Go Is — what it is, where it lives, and why learn it in the first place.
  2. Installing Go — Windows, Mac, and Linux, with checks that it worked.
  3. Your First Program — modules, go run, and go build, with checks along the way.

The building blocks

  1. Variables and Types — :=, var, and the types you'll actually use.
  2. Control Flow — if, for (the only loop), and switch.
  3. Functions — multiple return values and named results.
  4. Structs and Methods — data plus behavior, without classes.
  5. Interfaces — shared behavior, satisfied implicitly.
  6. Error Handling — errors as values: no exceptions, no surprises.

Reference

  1. Troubleshooting — compiler errors and common gotchas, plain fixes.
  2. Glossary — quick definitions, A to Z.

Writing criteria

Every guide follows the same writing criteria: plain words, no hype, honest limits, and checkable steps.