Slack

Slack’s connection error is fairly helpful – it gives a path forward (restarting), makes suggestions for how your settings might be interfering with the connection, etc. The main goal for Slack errors is to appear as helpful as possible so as little blame for the error is shifted on to Slack as possible. This is because Slack’s revenue is directly tied their perceived value from their clients who Slack needs contract renewals from, so avoiding an perception of being unreliable/faulty is hugely valuable (might be even better to let businesses write up their own error messages for their slack instance too if they’re even exposing logs anyway, make client employees think Slack has no fault at all).
Uber

When Uber hits an error it basically pauses – it doesn’t close out what you’re doing or cancel anything, it simply tries to reload to where you were and let you get right back to what you were doing. This helps maximize their ride completion which is critical to the app’s revenue – losing any ridership is an incremental cost. It might be more helpful to explain what caused the error, though, rather than just generically saying “we’ve detected a problem.”
Chase
Banking apps are one of the only kinds of service that consider an “app update being delayed” an error that requires recovery. When banking apps see an error they halt everything and either force a log out or require a human intervention (call the bank, go to bank branch, etc.) This is because banks need to be perceived as secure and need to lock down potential automated threats so people feel comfortable leaving their money with them, leading to arcane errors (confuse attackers) and laborious recovery processes (to ensure account holder verification). It’s annoying but it seems to work.
