“Methods should never trust the caller to have done sensible bounds checking or initialization, and devtest engineers should assume everyone is an idiot.”

— from Quora