How To Design A Good API and Why it Matters
Google TechTalks · 60:19 · Watch on YouTube
Joshua Bloch argues that all programmers are API designers and good APIs must be easy to learn, hard to misuse, just powerful enough, and evolvable — when in doubt, leave it out.