is one approach to writing software. It is a path with many followers who do not know what else to do other than “always assume the worst” to guarantee flawless function. Mind I didn’t say anybody is succeeding, least of all me. Alternatively of course one can document all preconditions and bury the clients of the API with exceptions. The latter is better from my current point of view. But that is not my point right here, right now.
Defensive Programming does something else for you and the world: it turns you into a paranoid conspiracy theorist (or so). The quota of these is much higher among geeks than anywhere else and now we know where it all starts.
On a side note, my colleague just said on the phone: “I am calling about the naked women ….” and doubles over with laughter, if you want to know more, you need to visit our office 🙂