Although originally designed by Google for the kinds of problems Google works on —large, distributed network applications—Go is now a general-purpose program‐ ming language useful in a wide variety of software domains. Many companies have started using Go because of its simplicity, ease of use, performance, low barrier of entry, and powerful tooling.
This book was written to help new programmers learn Go. Although there is an abundance of technical resources available for Go, most are geared toward experi‐ enced engineers. My goal here is to provide a more gentle introduction to the language.