Ultimate Debugging

Learn the latest tips, tricks, and best practices around debugging in Golang.

Course Description

This course is designed for developers who want to become proficient debugging Go software using the Delve debugger. Whether you’ve never used a debugger in your life or are a Delve expert, everybody will walk away with new information that can be used in their day to day development workflow.

The course will initially focus on Delve, which is the de facto Go debugger. We will start with the basics and move into more advanced use cases over the 5 days. On the last day of class, we will dig into new tools and cover profiling / perf tools, how to use them effectively, and how to interpret the data for root cause analysis.

Important: Upon completion of each session, there will be a video recording available for download for a period of 48 hours.

Agenda:

Day 1: Introduction, getting started, navigating your program, inspecting program state, changing program state.

Day 2: Advanced program navigation, tracing your program, examining core dumps (postmortem debugging).

Day 3: Scripting Delve, remote debugging, using the JSON-RPC API, record and replay debugging.

Day 4: Debugging containerized applications, debugging an application on Kubernetes.

Day 5: Using pprof profiling tools, using perf on Go binaries, deep dive into Delve and Go internals.

About Derek Parker

Derek is the creator of Delve, the Go programming language debugger. He has been developing software for over a decade and has traveled the world speaking at conferences and teaching workshops about debugging. After years of experience, Derek has put together the Ultimate Go Debugging workshop to level up developers of all skill levels in the art of debugging code.

Prerequisites

A basic understanding of the Go programming language. Students do not have to be expert Go users, but they will get the most from the workshop if they have completed the majority of the [Go Tour] (https://tour.golang.org/).