title: Handling request errors in Redux-based application
body: <p>Assume we have a Redux-based chat application. What strategy would you use to handle, for instance, undelivered messages? I see two ways: </p>
  
  <p><strong>1. Let the user to initiate message re-sending.</strong> 
  It should simplify error handling logic, but may negatively affect usability. It's also possible that user may not even notice that there are any undelivered messages while talking on multiple channels/with multiple persons at the same time.</p>
  
  <p><strong>2. Implement a "worker" that will check for failed messages and will  trigger re-sending automatically once in while.</strong> In this case user will require less manual work, but the application should have a more sophisticated logic and I don't really understand how to bring it together with Redux.</p>
  
  <p>Also there could be failed requests for other kinds of data. How would you handle such errors? Is it a bad idea to have a pool of serialized failed requests in the Redux state to be re-sent later?</p>