From The Design of Everyday APIs by Arnaud Lauret
Why should we care about the design of an API? It’s quite simple. What do you do when you use an everyday thing, whether it’s a microwave oven, a web site, a mobile application, a TV remote or an ATM? You use its interface.
From Irresistible APIs by Kirsten L. Hunter
In general, companies and organizations want to keep their vision and strategy close to the chest. Revealing this sort of information outside of your development organization feels like a vulnerable choice, but it is critical for a new platform, or an existing platform, to provide as much context around the API program as possible. I’m not talking here about reference documentation, tutorials, and example code. For this high level communication I’m talking about things like the overall vision, business values, and metrics.
By Roy Osherove
Sooner or later, as you start writing tests for your applications, you’re bound to refactor them, and create utility methods, utility classes, and many other constructs (either in the test projects or in the code under test) solely for the purpose of testability or test readability and maintenance. This article from The Art of Unit Testing how to use inheritance in your test classes, create test utility classes and methods, and make your API known to developers.