GoGoPrimer
< Back to module

Getting started

What is Go?

Go (sometimes called Golang) is a language created at Google in 2009 by Robert Griesemer, Rob Pike, and Ken Thompson. The goal was simple: keep the compile speed and efficiency of a compiled language like C, while being as easy to read as a scripting language.

Go is statically typed and compiled: your code is checked and then turned into a single executable binary, with no external dependency to install on the target machine. This is what makes it a very popular choice for command-line tools, network servers, and infrastructure (Docker and Kubernetes are themselves written in Go).

The language was deliberately designed with few keywords (25 in total) and no superfluous features. A Go program almost always reads the same way, regardless of its author: this is a design choice, not a lack of ambition.

Three ideas to keep in mind for the rest of this course: Go favors readability over expressiveness, it treats concurrency as a first-class feature (you'll discover it in a dedicated module), and it enforces a single code formatting style via the `gofmt` tool, which puts an end to style debates.