A first exemplary method implementation for designing an application
programming interface (API) includes: preparing multiple code samples for
a core scenario, each respective code sample of the multiple code samples
corresponding to a respective programming language of multiple
programming languages; and deriving the API from the core scenario
responsive to the multiple code samples. A second exemplary method for
designing an API includes: selecting a core scenario for a feature area;
writing at least one code sample for the core scenario; and deriving an
API for the core scenario responsive to the at least one code sample. A
third exemplary method for designing an API includes: deriving an API for
a scenario responsive to at least one code sample written with regard to
the scenario; performing one or more usability studies on the API
utilizing multiple developers; and revising the API based on the one or
more usability studies.