Async error handling: N² ways to shoot yourself in the foot
hackernoon.com