Developing a Go API client: the do's and don'ts
summary
Algolia rebuilds its Go API client for a new major version and shows concrete choices: keep binary compatibility for thousands of users by adding features via functional options / option structs rather than new overloaded signatures, prefer idiomatic interfaces and the empty interface for JSON payloads over heavy generics, avoid large code generation that doubles code and complicates tests, use channels sparingly, and ship a fast concurrent integration test suite using Go tooling and parallelized tests. preserve backwards compatibility pragmatic minimalism
AI-written summary · about
chapters (8)
- 0:00Introduction and background
- 5:07Building Go API clients
- 10:12Handling arbitrary dates
- 15:47Code generation in Go
- 22:49Managing dependencies
- 27:22Flexible object handling
- 31:02Practical advice summary
- 34:12Q&A








