Get Programming with Go

Nathan Youngman
Roger Peppé

Mikaël Dautrey
“Written for beginners but useful for the seasoned developers too.” Mikaël Dautrey
Managing Director, Isitix
Ulises Flynn
“Bootstrap your learning with the experience of two seasoned Go developers.” Ulises Flynn
Senior Software Engineer,

A beginner's guide to the
Go programming language.

Go is a small programming language designed by Google to tackle big problems. Go is suitable for programmers with a wide range of skill levels — a necessity for any large project. Being a relatively small language, with minimal syntax and few conceptual hurdles, Go could be the next great language for beginners.

If you've ever used a scripting language like JavaScript, Lua, PHP, Perl, Python, or Ruby, you're ready to learn Go. If you've used Scratch or Excel formulas, or written HTML, you're not alone in choosing Go as your first programming language.

Chock-full of engaging projects, you'll crack ancient ciphers, discover the wonders of cellular automatons, plan a vacation on Mars, and direct rovers to gather weather data.

To make it easier to get started, every code listing and exercise in Get Programming with Go can run inside the Go Playground, so there's nothing to install!

Mario Carrion
“Perfectly organized for learning Go quickly; especially useful for inexperienced programmers.” Mario Carrion
Ad Platform Architect, Meredith Corporation

Table of Contents

Unit 0: Getting started

  1. Get ready, get set, Go

Unit 1: Imperative programming

  1. A glorified calculator
  2. Loops and branches
  3. Variable scope
  4. Capstone: Ticket to Mars

Unit 2: Types

  1. Real numbers
  2. Whole numbers
  3. Big numbers
  4. Multilingual text
  5. Converting between types
  6. Capstone: The Vigenère cipher

Unit 3: Building blocks

  1. Functions
  2. Methods
  3. First-class functions
  4. Capstone: Temperature tables

Unit 4: Collections

  1. Arrayed in splendor
  2. Slices: windows into arrays
  3. A bigger slice
  4. The ever versatile map
  5. Capstone: A slice of life

Unit 5: State and behavior

  1. A little structure
  2. Go’s got no class
  3. Composition and forwarding
  4. Interfaces
  5. Capstone: Martian animal sanctuary

Unit 6: Down the gopher hole

  1. A few pointers
  2. Much ado about nil
  3. To err is human
  4. Capstone: Sudoku rules

Unit 7: Concurrent programming

  1. Goroutines and concurrency
  2. Concurrent state
  3. Capstone: Life on Mars
Esther Tsai
“The book I wish I had had when I started learning Go a year ago with zero programming experience.” Esther Tsai



Order in print with international shipping or the DRM-free ebook.


Online Retailers

Order in print from an online retailer in your country.

United States


South America




Christopher Haupt
“The gentle introduction to Go that I've been looking for. As I teach software development to new learners, I often get asked for a good tutorial or reference. This book is my new Go to.” Christopher Haupt
Director of Engineering, New Relic Inc.

Be a Champion

Write a review on Amazon, Goodreads, or elsewhere. Recommend Get Programming with Go to friends, colleagues, students, professors, and on social media. Use and share the links on this site.