Abhinav Gupta | About

Designing Go Libraries 53 minutes Requirements for writing high-quality Go libraries and patterns and best practices to help meet them.

Introduction to generics in Go 13 minutes Basics of function and type-level generics in Go, their limitations, and how to design around those limitations.

Bare minimum semantic versioning 4 minutes Basics of semantic versioning, and why you should do it.

Go Patterns and Practices talkSlides from a talk about writing maintainable Go packages.

Subcommands with Go’s flag package 10 minutes Gain a better understanding of Go's standard flag package and use it to build CLIs with subcommands.

Handle spaces in file names with xargs 6 minutes A gotcha with xargs, and how to work around it.

Mock programs to test os/exec in Go 17 minutes Learn how the test machinery works in Go and how you can use it to inject arbitrary mock behavior into external binaries during tests.