15 hours ago
- Great API design focuses on being memorable, unambiguous, and encouraging readable, correct, and performant code.
- First-order design aspects like readability are important, but code and requirements evolve over time.
- Second-order design anticipates how code using the API will change, including moving, copying, renaming, unifying, unwinding, adding hacks, optimizing, throwing away, and debugging.
- Great APIs help developers not only fall into a pit of success but also stay there by being optimized for change.