Prerequisites
Background knowledge
This book is written as a follow up to Let’s Go, and we’ll leverage a lot of the information and code patterns from that book again here.
If you’ve already read and enjoyed Let’s Go, then this book should be a good fit for you and the ideal next step in your learning. If you haven’t, then I highly recommend starting with Let’s Go first — especially if you’re a newcomer to Go.
You can read this as a standalone book, but please be aware that it is somewhat advanced — it doesn’t explain the fundamentals in detail, and some topics (like testing) don’t feature at all because they were covered heavily in the previous book. But if you’re comfortable using Go and already have a decent amount of experience behind you, then this book may also be a good fit for you. Feel free to jump straight in.
Go 1.23
The information in this book is correct for the latest major release of Go (version 1.23), and you should install this if you’d like to code-along with the application build.
If you’ve already got Go installed, you can check the version number from your terminal by using the go version
command. The output should look similar to this:
If you need to upgrade your version of Go, then please go ahead and do that now. The instructions for your operating system can be found here.
Other software
There are a few other bits of software that you should make sure are available on your computer if you want to follow along fully. They are:
The curl tool for working with HTTP requests and responses from your terminal. On MacOS and Linux machines it should be pre-installed or available in your software repositories. Otherwise, you can download the latest version from here.
The hey tool for carrying out some basic load tests. You can install hey with the
go install
command:The git version control system. Installation instructions for all operating systems can be found here.
A web browser with good developer tools. I’ll be using Firefox in this book, but Chromium, Chrome or Microsoft Edge will work too.
Your favorite text editor 😊