Hasty Briefsbeta

Bilingual

Optimized for Change — overreacted

13 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.