Study Go concurrency, goroutines, and memory models through structured course exercises and code examples.
Learn data-oriented design and performance techniques in Go using the included material on mechanical sympathy.
Watch recorded conference talks by William Kennedy linked from the repo to deepen understanding of the Go runtime.
This repository contains the course material for Ardan Labs' Go training program. Go (sometimes called Golang) is a programming language developed by Google and used widely for building servers, command-line tools, and infrastructure software. The material here accompanies classes that Ardan Labs has taught to developers worldwide since 2014, offered through corporate training events, conferences, and on-demand video. The training is aimed at intermediate-level developers who already have some experience writing Go code, typically a few months to a few years. The coursework goes deep on how the language actually works: language mechanics (how memory, types, goroutines, and other core constructs behave), design philosophies, and practical guidelines for writing software that is consistent, readable, and straightforward to maintain. A significant portion covers performance topics, including how modern hardware and the Go runtime interact (described as mechanical sympathy), data-oriented design, and techniques for writing code that can be debugged and trusted in production. The full training has also been recorded and is available as a paid video course through Ardan Labs' education platform for those who cannot attend a live session. A companion book called the Ultimate Go Notebook covers the same material in written form. The primary instructor is William Kennedy, a managing partner at Ardan Labs and co-author of the book "Go in Action." He has given talks at Go conferences around the world, covering topics ranging from concurrency and memory profiling to garbage collection and package design. The repository includes links to many of those recorded conference talks.
← ardanlabs on gitmyhub — every repo by this author, as a profile.
Verify against the repo before relying on details.