"Don't version unless you absolutely must, and it is rare that you absolutely must" says Mike Amundsen in a series of API design workshops he held recently. Amundsen describes the "USE" paradigm for API design focussing on usability, scalability and evolvability. He describes the three most common styles of API implementation and how they compare to these principles.
Mark Seemann suggests in his article “IQueryable is Tight Coupling” that designing an API such that it exposes an IQueryable
Apigee, provider of API products and technology for enterprises and developers, has announced the release of "Web API Design: Crafting Interfaces that Developers Love", a free e-book on designing Web APIs. The e-book is a collection of REST API design practices developed in collaboration with various API teams around the world undergoing the Apigee design workshop.
As the title suggests, in Best Practices For HTTP API Evolvability, Benjamin Carlyle, set out to define priciples and practices for designing systems, that are built around HTTP API’s. Systems, that are extensible and can evolve over time.
After a teaser with clues last week, Subbu and the engineering team at eBay have unveiled ql.io, a SQL inspired dsl to enable frictionless composition of web API's with a SQL like syntax.
Refering to a questions over versioning conventions used OpenStack Api, Mark Nottingham provides an analysis of the various strategies for versioning Web API in the cloud.
The ConcurrentDictionary is a cornerstone in .NET 4.0’s greatly increased emphasis on parallel and concurrent programming. But while vastly superior to what we have seen in the past, it isn’t a panacea and developers need to study its semantics carefully.
Jaroslav Tulach's latest book Practical API Design covers the topics of API design in modern software applications, what factors make a good API, and how to go about implementing API frameworks. InfoQ spoke with Jaroslav about his new book. We are also making an excerpt from the book available for our readers.