I suspect many will agree with me that logging is ALWAYS
absolutely necessary. You will never be able to prove that your implementation of a non-trivial system "works". Ever. You can get to 99.9%, but you will always have that uncertainty. Always. Logging is the simplest method by which you, as the developer, can have an idea of what went wrong when (not if!) it does break.
Never assume that a system a human develops will not break. Even if the human's activity was to write the code that wrote the code ... there's still an error in there. Somewhere.
We are the carpenters and bricklayers of the Information Age.
Don't go borrowing trouble. For programmers, this means Worry only about what you need to implement.