I assume that Observables is something like https://github.com/Reactive-Extensions/RxJS ?
Everything now is moving to processing streams of data
PS
This is good that Object.observe is deprecated. I think everybody is now moving to immutable collections / objects.
Considering simplicity and growing popularity of mobx it’s a bit optimistic
can you do time travel in mobx ?
I am not sure if there is a visual tool for it but you can snapshot a store after each transaction.
TC39 proposal-observable considers RxJS 5 and zen-observable implementations of the proposal. RxJS of course started as the JavaScript implementation of reactivex.
In a way basic function composition creates a data transformation pipeline for data to be pushed through. Composing observables can be used to create a data transformation pipeline to pull data through as soon as it becomes available. In both cases your code is supposed to primarily focus on constructing the data transformation pipeline - rather than scripting direct data manipulation.
Mobx is popular because it feels more familiar (i.e. and hence easier) - not because it actually is simpler (especially in the long run). People need to stop giving in to the temptation of easy and stop confusing easy with what is actually simple.
In context of React stores MobX is both Regardless of that my only point was that there are popular options that are not dealing with immutable collections / objects.
Forgetting to “use strict”; at the top of your code