kevinl (37) [Avatar] Offline
#1
It seems more than appropriate to also cover redux-observable. It leverages ESNext observables with is significantly a better async abstraction than promises (inc. async/await) and callback-based systems.

It's also very popular to be used within React apps and redux will often also be used with libraries or frameworks that already leverage observables with significant gains over existing async abstractions such as RxJS & Angular 2 (which uses RxJS to provide observables be continuously available).

Accordingly, it made sense to mention this as a suggestion.
Frances L. (8) [Avatar] Offline
#2
Thanks so much! I'm the development editor for this video, but I will get Thomas in here to see your note!
Thomas Tuts (1) [Avatar] Offline
#3
Hi Kevin,

Thanks so much for your suggestion! In this course we opted to use redux-thunk for async actions since they're just functions. This means they're far easier to grok than observables or sagas, which are concepts that most JS developers aren't familiar with yet.

I do agree with the sentiment that it should be covered, I'm just not sure if this introductory course is the right place for that. Maybe this is something that could be covered in a more advanced Redux course, though!
Mia (1) [Avatar] Offline
#4
These kinds of epics come up a lot while working with 3rd party reducer libraries like redux-form and react-router-redux, so a good strategy for them is vital!
kevinl (37) [Avatar] Offline
#5
Thomas Tuts wrote:Hi Kevin,

Thanks so much for your suggestion! In this course we opted to use redux-thunk for async actions since they're just functions. This means they're far easier to grok than observables or sagas, which are concepts that most JS developers aren't familiar with yet.

I do agree with the sentiment that it should be covered, I'm just not sure if this introductory course is the right place for that. Maybe this is something that could be covered in a more advanced Redux course, though!


Thanks for taking time to analyze this issue.

It seems redux-observable should be an appendix thing to cover for this course. Angular 5, CycleJS, React, & other modern libs/frameworks either use Observables out of the box or have tons of well regarded libraries to use with such things that deal with Async Redux concerns with Observables that is on standards track (& to a lesser extent, Sagas).

Observables is merely an object to handle values over time through the use of functions in a pipeline format; I don't think it's outside the realm of the course to even extend what you initially do with `redux-thunk` with only functions to that.