Diving into Go: A Five-Week Intro

One of my favorite parts of being a developer here at Viget is our developer book club. We’ve read some fantastic books, but for our most recent go-round, we decided to try something different. A few of us have been interested in the Go programming language for some time, so we decided to combine two free online texts, An Introduction to Programming in Go and Go By Example, plus a few other resources, into a short introduction to the language. Chris and Ryan put together a curriculum that I thought was too good not to share with the internet at large.

Week 1

Chapter 1: Getting Started

  • Files and Folders
  • The Terminal
  • Text Editors
  • Go Tools
  • Go By Example

Chapter 2: Your First Program

  • How to Read a Go Program

Chapter 3: Types

Chapter 4: Variables

Chapter 5: Control Structures

Chapter 6: Arrays, Slices and Maps

Week 2

Chapter 7: Functions

Chapter 8: Pointers

Week 3

Chapter 9: Structs and Interfaces

Chapter 10: Concurrency

Week 4

Week 5

Chapter 11: Packages

  • Creating Packages
  • Documentation

Chapter 12: Testing

Chapter 13: The Core Packages

Chapter 14: Next Steps

  • Study the Masters
  • Make Something
  • Team Up

* * *

Go is an exciting language, and a great complement to the Ruby work we do. Working through this program was a fantastic intro to the language and prepared us to create our own Go programs for great justice. Give it a shot and let us know how it goes.

David is Viget's managing development director. From our Durham, NC, office, he builds high-quality, forward-thinking software for PUMA, the World Wildlife Fund, ID.me, and many others.

More posts by David