Books

 

I've written and self-published two books about building web applications and APIs with Go. Both books guide you through the start-to-finish build of a working application, which I think is a great way to learn because it helps connect theory and principles to real-world functionality and code patterns. They're fully updated for the latest version of Go.

Right now I'm also working on a third book, focused on the practicalities of developing and maintaining Go codebases. I hope to release it in the first half of 2026.

Let's Go

This book teaches you the fundamentals of creating production-ready web applications in Go. We walk through building a simple snippet-sharing app (a bit like Pastebin), starting with essentials like routing, middleware, error handling, logging, and configuration. Then we cover practicalities like working with SQL databases, HTML templates, form validation, and session management, finishing with secure user authentication/authorization and best-practice testing patterns.

You can read a free sample and buy it online or check out the reviews on Goodreads.

Let's Go Further

Like the name suggests, this is a follow-up to the first book 😊 In it we build a fully functional JSON API for accessing a database of movies. We start with the practicalities of working with JSON, then move on to advanced topics including SQL migrations, background tasks, partial updates and optimistic locking, permission-based authorization, CORS requests, graceful server shutdown, exposing application metrics and automating build and deployment steps.

You can read a free sample and buy it online or see the reviews on Goodreads.

Go: Beyond the Syntax

Coming soon: What every new Gopher needs to know about working on real projects in Go. This book will cover topics like editor setup and useful developer tooling, maintaining your codebase, good coding practices (and bad ones to avoid), what's normal in Go and what other Gophers expect, and external resources to consult when you get stuck. In short, the important stuff that books and tutorials on syntax don't teach you.