The Design of Everyday APIs
summary
Builds a tiny pub/sub library called chaos Q and iterates it against three concrete principles: intuitive, flexible, simple. Shows specific changes — splitting publisher and subscriber clients, using keyword defaults, accepting batches, returning clear types, adding an iterator and context manager — and measures impact by shrinking example user code from 29 to 14 lines. Calls out real tools and patterns used (FFmpeg as a counterexample, dataclasses/attrs for defaults) and demonstrates the resulting API behavior.
AI-written summary · about
chapters (10)
- 0:00Introduction
- 1:06Why this talk
- 2:11Good design principles
- 7:30API design examples
- 8:12Simple PubSub library
- 9:59APIs should be intuitive
- 14:14APIs should be flexible
- 22:00APIs should be simple
- 28:23Recap and key takeaways
- 29:30Q&A
related talks
44mDesigning great APIs: Learning from Jony Ive, Orwell, and the Kano Model
40mPIMP Your JS Library or Desgning Non-Shit APIs with JavaScript
26mDesigning Accessible APIs
42mGood APIs don't need a tutorial
46mDieter RAMs: the ten principles of good API design
35mPrinciples of Awesome APIs and How to Build Them
18mSimplifying Consuming APIs for SDK Haters
42mDesigning with Elixir
