What makes a good API? What makes people *want* to use yours? It doesn't matter if it's REST, RPC, or something else - the API design should start with purpose. Let's talk about API evolution, verifiable consistency, clear description, runnable documentation, implementation architecture, and other techniques to minimize the development effort and ease the integration for our clients. Let's also dispel a few myths about HTTP, while we're at it.