Go

Simple, fast, concurrent

100% free · no signup to read 5 chapters Programming language

Created

2009 by Robert Griesemer, Rob Pike, Ken Thompson at Google

Type

Compiled, statically typed, concurrent

Current version

Go 1.22 (2024)

Powers

Docker, Kubernetes, Terraform, Cloudflare

Concurrency

Goroutines + channels (built-in)

Used by

Google, Uber, Twitch, Dropbox

File extension

.go

Best for

Cloud infrastructure, CLIs, microservices

What is Go?

Go (Golang) is a compiled language created at Google in 2009. It's designed for simplicity, fast compilation, and built-in concurrency — perfect for cloud infrastructure.

Why Go?

Go compiles to a single static binary, has a garbage collector with a tiny footprint, and its goroutines make concurrency trivial. It's the language of Docker, Kubernetes, and Terraform.

Feature Go Rust Python
Compilation Very fast Slow Interpreted
Concurrency Goroutines (easy) async/await Threading (GIL)
Memory safety GC (safe) Ownership (safe) GC (safe)
Learning curve Very easy Medium Easy
Best for Cloud, CLIs Systems, performance Data science, scripting

What you'll learn

Chapter What you'll know
Introduction What Go is, how to run it
Types & Structs Slices, maps, structs, methods
Functions Multiple returns, defer, closures
Interfaces Implicit satisfaction, composition
Concurrency Goroutines, channels, select

Start with introduction.