The document discusses the need for more reusable APIs and outlines 10 things API developers should stop doing, including mapping semantics to protocols instead of messages, hiding update and query rules in documentation, and requiring clients to recode and redeploy at random. It argues that APIs should map semantics to messages, use inline hypermedia controls, provide SDKs when needed, share message models rather than object models, describe services abstractly, put workflow in messages, avoid breaking changes, and distribute storage and execution rather than relying on single points of failure. The document concludes that making these changes to follow best practices for reusable APIs is not complicated, though some aspects may be hard.