http://www.perlmonks.org?node_id=338972


in reply to Ingy's "Swiss Army Light Sabre" - or, "how do you design your APIs?"

My favorite test for an API is "Can I remember how to use this after a week and in a hurry without the docs?".

If I can remember the method names and the arguments then the API works for me. If I need the docs open all the time then the API is wrong. Obviously some things are more complicated than others but this is a good start.

--tidiness is the memory loss of environmental mnemonics