Exception Handling Designing Robust Software
summary
Covers concrete Ruby patterns: when to raise vs return objects, why rescuing Exception hides bugs, and how to keep original exception when converting low-level errors into higher-level ones. Shows rescue/ensure/retry syntax, warns against raising inside ensure, and presents pragmatic strategies — a simple retry counter, a circuit breaker for external calls, and exception collection for bulk data processing. Includes a two-resource failure challenge and argues for documented, levelled error guarantees.
AI-written summary · about
chapters (16)
- 0:00Exception handling intro
- 1:17Why exception handling matters
- 4:57Ruby basics
- 12:12Proper exception use
- 16:26Raising in rescue
- 18:53Avoid resource leaks in ensure
- 20:15Document exceptions in libs
- 22:46Strategy overview
- 23:12Exception safety levels
- 27:35Define safety levels
- 28:40External call strategies
- 30:09Circuit breaker pattern
- 30:51Batch exception collection
- 32:03Delegate to callers
- 33:09Alcohol vs exceptions
- 35:41Summary & Q&A








