title: What is "callback hell" and how and why does RX solve it?
body: <p>Can someone give a clear definition together with a simple example that explains what is a "callback hell" for someone who does not know JavaScript and node.js ?</p>
  
  <p>When (in what kind of settings) does the "callback hell problem" occur? </p>
  
  <p>Why does it occur?</p>
  
  <p>Is "callback hell" always related to asynchronous computations? </p>
  
  <p>Or can "callback hell" occur also in a single threaded application? </p>
  
  <p>I took the Reactive Course at Coursera and Erik Meijer said in one of his lectures that RX solves the problem of "callback hell". I asked what is a "callback hell" on the Coursera forum but I got no clear answer.  </p>
  
  <p>After explaining "callback hell" on a simple example, could you also show how RX solves the "callback hell problem" on that simple example?</p>