It is my hope that these maxims provide a concise summary of the key points of API design, in easily digestible form:
All programmers are API designers. Good programs are modular, and intermodular boundaries define APIs. Good modules get reused.
APIs can be among your greatest assets or liabilities. Good APIs create long-term customers; bad ones create long-term support nightmares.
InfoQ: Joshua Bloch: Bumper-Sticker API Design.
We've been working on building web services for our big project here at work and the API of the services has been a concern of mine for awhile. We've mostly been throwing these things together for one-off needs but I'd like to start formalizing a bit of what we've done to make it more manageable and maintainable. I think I'm going to print this list out and keep it handy.