Difference between new Observable(...) and Rx.Observable.create(...)? : <p>I'm updating our software substituting all promises (and other hairy junk) for observables. To make sure that I'm following best practices, I made a quick googlearch and noticed that in <a href="https://angular-2-training-book.rangle.io/handout/observables/error_handling.html" rel="noreferrer">some cases</a>, the suggested syntax is by instance whereas in <a href="https://xgrommx.github.io/rx-book/content/getting_started_with_rxjs/creating_and_querying_observable_sequences/creating_and_subscribing_to_simple_observable_sequences.html" rel="noreferrer">other cases</a>, the examples perform a call by factory. </p>

<pre><code>const byInstance = new Observable(_ =&gt; { ... });

const byFactory = Rx.Observable.create(_ =&gt; { ... });
</code></pre>

<p>I'm curious what's the actual difference. Are they precisely interchangeable? Is it an older/newer syntax/approach? Is it framework related? And, of course, which is to be preferred (<strong>under the condition that</strong> it's not opinionated, disputed etc.).</p>
