Exceptions are a fundamental concept of many SW systems. Yet, the right way to use and handle them is not always clear, and highly varies among systems and platforms. This post goes over the most important rules for successful exception handling towards robust and well written systems.