Fail Fast: The Defensive Programming Principle You’re Applying Backwards

Returning a default value instead of raising is not defensive. It is silent corruption.