GopherCon 2021
2021-12-05..2021-12-08
-- online --
[GopherCon 2014, GopherCon 2019, GopherCon 2020, GopherCon 2021, GopherCon 2022, GopherCon 2023, GopherCon 2024, GopherCon 2025]
who it's for
Go developers, backend engineers, platform engineers, observability engineers, developer tools engineers, embedded developers
topics
generics in Go 1.18; Go CPU and memory profiling; runtime tracing and eBPF; WebAssembly modules in Go; event bus architectures with RabbitMQ; CRDTs for decentralized services; static analysis for Go; code generation with Go; Delve debugger advanced usage; goroutine scheduler internals; STL generation with sdfx; AI-assisted code generation
| title | author | length |
|---|---|---|
| Generics! | Robert Griesemer, Ian Lance Taylor | 29m |
Go 1.18 adds type parameters for functions and types, interfaces as type sets with unions and the tilde T syntax to allow underlying-type matching, a new… | ||
| Go Profiling and Observability from Scratch | Felix Geisendörfer | 44m |
Simple Go runtime model plus hands-on tools: CPU, memory, block, mutex, goroutine profilers and the runtime tracer, plus eBPF (bpftrace), Linux perf, Delve and… | ||
| Go at Mainframe Scale | Kaylyn Gibilterra | 53m |
Built a distributed Go system that ingests Capital One account data at 2 million tps and peaks around 5 Gbps, persisting over 20 TB across multiple regions in… | ||
| The What's, Why's, and How's of Running WebAssembly in Go | Connor Hicks | 33m |
Shows a small Go library called reactor Go library that embeds WebAssembly modules (wasm) using selectable runtimes like wasmtime/wasmedge, exposes explicit… | ||
| Reliability Nirvana | Daniel Selans | 57m |
Argues that switching core interactions to an event bus yields automatic recovery and far smaller failure domains; demo builds an orders and notifications… | ||
| Go Beyond Work | Angelica Hill, Natalie Pistunovich | 45m |
Shows building hobby projects in Go: a tinygo-controlled LED/Audio prop and a 3D-print workflow that programmatically generates STL files via the sdfx… | ||
| Writing a Static Analyzer for Go Code | Akhil Indurti | 32m |
Builds a static analyzer that finds missing closes, double closes and missing error handling by matching short variable declarations that yield an io.Closer… | ||
| When Toy Languages Grow Up | Linus Lee | 38m |
Built in Go, Oak is a small dynamic language whose interpreter is a tokenizer → recursive‑descent parser → AST → evaluator pipeline, produced as a 7 MB Go… | ||
| GopherCon 2021 - Day 1 | Erik St. Martin, Johnny Boursiquot, Aaron Schlesinger, Robert Greisemer, Ian Lance Taylor, Felix Geisendörfer, Kaylyn Gibilterra, Connor Hicks, Daniel Selans, Akhil Indurti, Linus Lee | 07h 56m |
Go 1.18 brings generics: type parameters, type sets with the tilde token, and type inference so you can write a single binary-tree or mean function usable… | ||
| AI-Driven Development in Go | Natalie Pistunovich | 31m |
Overview of concrete results: demos show unit test auto-generated for a Go package that compiles, an awk pipeline producing 12 filtered Spotify rows from a… | ||
| Queues, Fairness, and The Go Scheduler | Madhav Jivrajani | 47m |
Explains how Go 1.17.2 maps millions of goroutines onto threads using P/M/G with per-P local run queues of 256-local run length, a global run queue, and work… | ||
| 3D Printing Gophers with Go | Sebastian Spaink | 40m |
Uses Go to do four concrete things: a sdfx STL generator creates a gopher model saved as an STL, a Raspberry Pi opens a serial port and sends serial G-code to… | ||
| Rethinking How We Test Our Async Architecture | Tom Lyons | 37m |
CrowdStrike proves live testing of massive async pipelines by running real production data (over a trillion messages/day) through duplicate services and using… | ||
| Debugging Treasure Hunt | Suzy Mueller | 43m |
Live demo uses VS Code with the Go extension and Delve to run a mini web server that spawns goroutines and hides clues; one locker search inspects a slice of… | ||
| Go Team "Ask Me Anything" | Mat Ryer | 45m |
Covers why generics landed now and what actually changed: parser and type checker updates let basic editing work but static analyzers and the ssa package need… | ||
| How we Go | Arish Labroo | 44m |
Zillow standardizes Go services with reusable server and worker factories, a kafka client, a db provider (sqlx + tracing), a retriable HTTP client (HashiCorp… | ||
| GopherCon 2021 - Day 2 | Erik St. Martin, Johnny Boursiquot, Aaron Schlesinger, Natalie Pistunovich, Madhav Jivrajani, Sebastian Spaink, Tom Lyons, Suzy Mueller, Arish Labroo | 07h 06m |
GopherCon talks give concrete outcomes: demos show GPT‑3/Codex generating Go unit tests, bash one‑liners and full web pages (works but needs careful prompts)… | ||
| Taking the (Quantum) Leap with Go | Mathilde Raynal | 24m |
A Go library implements Kyber and Dilithium (CRYSTALS finalists) and claims both algorithmic and practical security by deviating from references and adding… | ||
| Using CRDTs to Build a Highly Available Decentralized Service | Arash Bina | 50m |
Bread implements a highly available decentralized service in Go that uses CRDTs, a gossip layer and sidecar deployment to let any replica answer reads and… | ||
| Becoming the Metaprogrammer Real World Code Generation | Alan Shreve | 42m |
Code generation cuts boilerplate by producing real, typed code: tools like sqlc and mockgen are used at ngrok to replace repetitive DB scanning and handwritten… | ||
| Be Smug, Debug Why You Should Be a Delve Power User | Sam Kamenetz | 35m |
Shows how Delve debugs web servers, tests, Docker containers and remote processes with concrete commands and configs: use -gcflags "-N -l" when building, run a… | ||
| A Journey from Big Python Monolith to Go Services | Kevin Dangoor | 24m |
Khan Academy migrates a 10-year Python 2 monolith into Go services, shipping ~750,000 lines of Go that implement about 5,000 GraphQL fields (85% of fields) and… | ||
| Gophers Say! | Matt Ryan | 45m |
Surveyed gophers answer specific, sometimes surprising things: the most popular coding spot is the coffee shop with 38 votes, followed by park and office; when… | ||
| Building Production Applications Using Go | Ben Johnson | 39m |
Argues that using sqlite with Go can replace many client‑server setups: recommends go-sqlite3 (mattn) as the default driver, enables WAL journaling and sets… | ||
| Unbound Concurrency in Go | Johnny Boursiquot, Aaron Schlesinger | 58m |
Builds a TCP port scanner using Go's standard library, starting from a single hardcoded dial to net.Dial and evolving through parallel scans to a worker pool… | ||
| GopherCon 2021 - Day 3 | Erik St. Martin, Johnny Boursiquot, Aaron Schlesinger, Mathilde Raynal, Arash Bina, Alan Shreve, Sam Kamenetz, Kevin Dangoor, Ben Johnson | 07h 42m |
Final day mixes demos and hard numbers: production Go for crypto, databases, distributed systems and tooling. Hear how a Google Go library implements Kyber &… | ||
| nothing matches | ||