On API Design from Google

I always have had a great interest in how to design a proper API. This is not only code-related. The issues at hand are really linked to how to express things clearly, concisely, and with purpose. At Google (and Microsoft for that matter), there is really a great amount of insights available. Check this video on API design: Google Video has the most insane amount of videos on these subjects. And still, I see a ton of crappy designs that seem to follow no rule at all, as they would have been designed by monkeys typing random characters (by that, meaning, no modularity nor responsibiliy concept showing up, tearing objects apart just to reassemble them after). Thanks God, there are places where people know the craft. Also, if you want more Josh Bloch (this guy is a true genius on Java), check out this (ok, this is getting hardcore):