~/talk

Developing a Go API client: the do's and don'ts

Talkat GoLab 2019 · 2019-10-20..10-22· [api-design, go]
links:none on file
slides:none on file

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

  1. 0:00Introduction and background
  2. 5:07Building Go API clients
  3. 10:12Handling arbitrary dates
  4. 15:47Code generation in Go
  5. 22:49Managing dependencies
  6. 27:22Flexible object handling
  7. 31:02Practical advice summary
  8. 34:12Q&A
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.