Skip to content
FLAVIO COPES
flaviocopes.com
2026

The Go Guide

By Flavio Copes

Learn Go programming: a guided path through Go basics, slices, maps, structs, interfaces, plus hands-on projects like CLI tools and a REST API.

~~~

Go is a programming language built at Google, designed for simplicity and speed.

It compiles to a single binary, has a small set of keywords, and comes with a great standard library. It’s the language behind Docker, Kubernetes, and a huge part of modern cloud infrastructure.

What I love about Go is how little there is to learn. The language is deliberately small. You can read the spec in an afternoon, and code written by others always looks familiar.

Go moves slowly and values backwards compatibility, so the fundamentals covered here are solid ground. This page is your map to the Go content on this site.

Where to start

I wrote a series covering the language basics in order. Start here:

Data structures

Go gives you a few core data structures, and you’ll use them constantly:

Then the concepts that make Go feel like Go:

If you want to go further, I explored classic computer science structures in The complete guide to Go Data Structures, with dedicated posts like the Set and the Binary Search Tree.

Build real things

The best way to learn Go is to build small programs. Go is fantastic for CLI tools, so I wrote a series of project tutorials:

Tooling

A few posts on the workflow around the language:

Go deeper

I collected the language material in the free Go Handbook. It’s a structured walk through the language, and you can download it as PDF or EPUB.

All posts on this topic are in the Go tag archive.

Tagged: Go · All topics
~~~

Related posts about go: