The current Web API landscape does not scale well: every API requires its own hardcoded clients in an unusually short-lived, tightly coupled relationship of highly subjective quality. This directly leads to inflated development costs, and prevents the design of a more intelligent generation of clients that provide cross-API compatibility. We introduce 5 principles to establish an ecosystem in which Web APIs consist of modular interface features with shared semantics, whose implementations can be reused by clients and servers across domains and over time. Web APIs and their features should be measured for effectiveness in a task-driven way. This enables an objective and quantifiable discourse on the appropriateness of a certain interface design for certain scenarios, and shifts the focus from creating interfaces for the short term to empowering clients in the long term.
|Publication status||Published - 22 Sep 2016|