title: Hot and Cold observables: are there 'hot' and 'cold' operators?
body: <p>I reviewed the following SO question:
  <a href="https://stackoverflow.com/questions/2521277/what-are-the-hot-and-cold-observables">What are the Hot and Cold observables?</a></p>
  
  <p>To summarize:</p>
  
  <ul>
  <li>a cold observable emits its values when it has an observer to consume them, i.e. the sequence of values received by observers is independent of time of subscription. All observers will consume the same sequence of values.</li>
  <li>a hot observable emits value independently of its subscriptions, i.e. the values received by observers are a function of the time of subscription.</li>
  </ul>
  
  <p>Yet, I feel like hot vs. cold is still a source of confusion. So here are my questions:</p>
  
  <ul>
  <li><p>Are all rx observables cold by default (with the exception of subjects)? </p>
  
  <p>I often read that events are the typical metaphor for hot observables, but I also read that <code>Rx.fromEvent(input, 'click')</code> is a cold observable(?).</p></li>
  <li><p>Are there/what are the Rx operators which turn a cold observables into a hot observable (apart from <code>publish</code>, and <code>share</code>)?</p>
  
  <p>For instance, how does it work with Rx operator <code>withLatestFrom</code>? Let <code>cold$</code> be a cold observable which has somewhere been subscribed to. Will <code>sth$.withLatestFrom(cold$,...)</code> be a hot observable? </p>
  
  <p>Or if I do <code>sth1$.withLatestFrom(cold$,...), sth2$.withLatestFrom(cold$,...)</code> and subscribe to <code>sth1</code> and <code>sth2</code>, will I always see the same value for both <code>sth</code>?</p></li>
  <li><p>I thought <code>Rx.fromEvent</code> creates cold observables but that is not the case, as mentioned in one of the answers. However, I am still baffled by this behaviour: <a href="https://codepen.io/anon/pen/NqQMJR?editors=101" rel="noreferrer">https://codepen.io/anon/pen/NqQMJR?editors=101</a>. Different subscriptions get different values from the same observable. Wasn't the <code>click</code> event shared?</p></li>
  </ul>