Netflix JavaScript Talks - RxJS + Redux + React = Amazing!

Поделиться
HTML-код
  • Опубликовано: 14 сен 2016
  • Jay Phelps (@_jayphelps ) talks about why Netflix loves reactive programming with Rx. In this talk he shares the basics of RxJS 5 Observables and how they can be used with React and Redux to manage asynchronous effects using redux-observable.
    redux-observable.js.org
    Slides: www.slideshare.net/jayphelps/r...
  • НаукаНаука

Комментарии • 208

  • @riodweber
    @riodweber 7 лет назад +291

    { ToDo: "FIX_AUDIO" }

    • @RockstahRolln
      @RockstahRolln 6 лет назад +2

      LOL!! XD { Type: YesPlease }

    • @PiAL98
      @PiAL98 4 года назад

      ​@@RockstahRolln audio need noise-cancelling 😂

    • @HK-sw3vi
      @HK-sw3vi 4 года назад +1

      I muted the video and lip read the talk.

    • @kylebedell3731
      @kylebedell3731 3 года назад +4

      Better to use standard actions.
      {
      "type": "ADD_TODO",
      "payload": {
      "title": "Fix Audio"
      }
      }

  • @DanielBoa
    @DanielBoa 7 лет назад +27

    I love nothing more than someone interrupting a speaker in the middle of their talk...
    Really good introduction - despite the recording quality, will definitely give both RxJS and redux-observable a look.

  • @mistenkt
    @mistenkt 7 лет назад +84

    And this is why watching RUclips in bed at 2:30 AM is not always a bad idea.
    Great talk. Looking forward to trying it out at work tomorrow.

    • @ShaXCwalk
      @ShaXCwalk 7 лет назад +1

      mistenktdotcom lmao its 2:45am here atm why i read this comment..

    • @gulshansharma1022
      @gulshansharma1022 7 лет назад +1

      2:51 and still it seems super cool

    • @TanNguyen-ol7es
      @TanNguyen-ol7es 3 года назад

      2:43 AM

    • @toxico2699
      @toxico2699 8 месяцев назад +1

      4:30 am

    • @mistenkt
      @mistenkt 8 месяцев назад

      @@toxico2699 Get some sleep

  • @TrainingWithKona
    @TrainingWithKona 7 лет назад +512

    These talks are all very well done but whoever was in charge of audio should try a little harder next time.

    • @rodrigobac
      @rodrigobac 7 лет назад +9

      React Router talk has a horrible audio :(

    • @tigerfordinner
      @tigerfordinner 7 лет назад +13

      Thanks for your comment. I just thought my laptop speaker is time to get replaced. :)

    • @BrandonOsborn404
      @BrandonOsborn404 7 лет назад +2

      This is the third netflix presentation that sounds this awful - maybe it's some loser relative of Reed Hastings, who they can't fire.

    • @marcuss.abildskov5691
      @marcuss.abildskov5691 7 лет назад +3

      Skip the first 15 minutes then it's worth it.

    • @freedomming
      @freedomming 7 лет назад

      Just download it and play it with other players.

  • @hannahzzz3308
    @hannahzzz3308 5 лет назад +1

    This is so clear and makes the whole picture clear.

  • @oudinia1
    @oudinia1 4 года назад +2

    really great talk. it explains well the concept of redux and adds rxjs part in a very clear way. Thanks, even now in 2020, it is still a great presentation.

  • @glendronac
    @glendronac 7 лет назад

    Brilliant talk! And special thanks for non-trivial examples!

  • @videderien2
    @videderien2 7 лет назад +6

    Very very very good talk ! It is worth it to watch it despite the (bad) sound quality.

  • @mareklisy2137
    @mareklisy2137 7 лет назад

    Thanks a lot for the talk, I enjoyed and I'm going to learn RxJS right now :)

  • @alfonsoperez2650
    @alfonsoperez2650 7 лет назад +6

    Nice talk!, Definitely I am giving redux-observable a try.

  • @danielmichalski2436
    @danielmichalski2436 Год назад

    I've been using redux-observable in my current project and I just love it! It was hard to grasp the RxJS stuff at first, though.

  • @walkersean7592
    @walkersean7592 5 лет назад +1

    Thanks for the great talk! This really helps me understand redux-observable.

    • @raziarahmat4299
      @raziarahmat4299 2 года назад

      I live in Karachi Pakistan I like your comments send 4 month ago

  • @nageswariraghunathan3470
    @nageswariraghunathan3470 Год назад

    very very useful presentation, it is very much helpful to relate all the concepts of redux especially for those who have started their career in react technologies.

  • @lenaggar
    @lenaggar 7 лет назад +3

    really awesome talk

  • @voiceaddict
    @voiceaddict 6 лет назад

    NICE!! Going to learn RxJS this weekend.

  • @rexromae17
    @rexromae17 7 лет назад +1

    Really good talk!

  • @ko22012
    @ko22012 2 года назад

    Great presentation about rxjs.

  • @tonybrown7847
    @tonybrown7847 7 лет назад

    Excellent presentation

  • @glendronac
    @glendronac 7 лет назад

    And "three ducks" is hilarious, finally managed to recognize those on the logo : )

  • @hernanruiz756
    @hernanruiz756 3 года назад

    very informative talk, thank you

  • @user-ys3ih8lg1i
    @user-ys3ih8lg1i 3 года назад

    Thanks for this talk. It is informative to me.

  • @DeepSingh-qd7ed
    @DeepSingh-qd7ed 6 лет назад

    awesome talk. RxJS + Redux....looks great. 20:09 (logo rocks!)

  • @Vkhiet
    @Vkhiet 7 лет назад

    Nice talk!

  • @l3lackcurtains
    @l3lackcurtains 7 лет назад +2

    giving it a try right now.

  • @ahmady09
    @ahmady09 6 лет назад +1

    it very nice attempt with good explanation thanks ...

  • @HelpTheLazy
    @HelpTheLazy 5 лет назад

    Great lecture

  • @ollwenjones
    @ollwenjones 7 лет назад +5

    My guess on the audio: Probably was a talk given internally, and someone recorded it and posted it on their own as an after-thought.

  • @luisfernandogonzaleztostad1294
    @luisfernandogonzaleztostad1294 2 года назад

    I have stumbled with a new project that handles connections and redux with this library, and yes, it still looks like rocket science in 2022.

  • @vyorkin
    @vyorkin 7 лет назад +6

    great talk (ohuenno), using it in one of our apps

  • @leongilyadov1342
    @leongilyadov1342 6 лет назад

    Thank You, very interesting!

  • @ayoubelhayat9650
    @ayoubelhayat9650 3 года назад

    that was EPIC!

  • @rsjrx
    @rsjrx 7 лет назад +71

    Rx is one of the most difficult libraries I've ever tried learning, the combination of FRP concepts + an extremely large API surface area. Debugging is difficult, the documentation is difficult for beginners. Worth it though. Keep at it if you feel the same.

    • @sunnymittal1906
      @sunnymittal1906 7 лет назад +7

      Very true, but good things generally aren't easy. Rx is definitely a huge step in the right direction for web tech.

    • @Ondraasha
      @Ondraasha 7 лет назад +1

      What? Rx is incredible easy. It's basically just an observer/observable composition, at which you throw a few event handlers.

    • @DenverBohling
      @DenverBohling 7 лет назад +15

      Just because you think it's easy doesn't make it easy. Especially for programmers coming from OOO background. RxJs is definitely a step in the right direction, and it produces some excellent work. However I also found debugging to be difficult. You have to resort basically to .tap/.do statements and the good old fashioned console.log

    • @quorkquork
      @quorkquork 7 лет назад +5

      OOO background you say

    • @rickyj1
      @rickyj1 5 лет назад +1

      Good things "are" easy, simplified, and well structured. e.g iphone

  • @dxcqcv
    @dxcqcv 6 лет назад +2

    I can use es6 async/await with promise and es6 destructuring to make code looks like sync, but in redux-observable how to use it with async/await and destructuring together?

  • @jucaamil6229
    @jucaamil6229 7 лет назад

    Nice talk

  • @rasmuskarlsson2906
    @rasmuskarlsson2906 7 лет назад

    Great sound.

  • @codegully_channel
    @codegully_channel 7 лет назад

    awesome!

  • @mukeshsoni
    @mukeshsoni 7 лет назад +4

    Great talk! Seems to be solving all async actions related problems we are facing with redux.
    If only there was an easy way to sell RxJS to my colleagues 😕

    • @sunnymittal1906
      @sunnymittal1906 7 лет назад +1

      Good luck with that. It drives me crazy!

    • @andresg747
      @andresg747 6 лет назад +2

      Provide a good use case example. Or even better, a problem which would be a nightmare to solve just using promises, and show them a possible solution using Observables and you won't have to sell it.

  • @rodrigoorellana2389
    @rodrigoorellana2389 2 года назад

    So, question: does reactjs implements hooks for using redux under an observable context?

  • @arjunnayak9088
    @arjunnayak9088 10 месяцев назад

    I understood the need for canceling the request when I started building my first react native app. API timeout alert started to appear one above the other.Since then I've been using abort controllers to cancel the api requests in every app.

  • @kushal1
    @kushal1 5 лет назад

    Middleware is something that sits between and doesn't work in parallel . I believe website of redux-observable states that actions hit the reducers first and then dispatches another action. So calling it a middleware in talks and writing on your site might be a whole lot confusing.

  •  3 года назад

    Is someone share any resource for this promises trick @8.40, I'm trying to understand it

  • @shenghualian
    @shenghualian 4 года назад

    I would say, the talk 3 years ago makes me more clear about NGRX...

  • @sunnymittal1906
    @sunnymittal1906 7 лет назад +6

    I'm sure it was clear to most everyone, but an addition to the concept of a "pure function" is that it also modifies nothing outside of the function. I.e.
    let count = 0
    const sum = (x, y) => { count++; return x + y }
    Same input always gives the same output, but it's not pure.

    • @IDOLIKIofficial
      @IDOLIKIofficial 6 лет назад +1

      Yeah, he said that

    • @PortEXE
      @PortEXE 5 лет назад

      That is what he is calling a side-effect.

  • @sunnymittal1906
    @sunnymittal1906 7 лет назад +53

    Jeez guys, be thankful for them posting this video and don't just slam the audio quality.

    • @wilfredogaldamez4601
      @wilfredogaldamez4601 7 лет назад +4

      if my video had a problem, i would want to know so that the problem is fixed. that's how to world works. we can be thankful and give criticism at the same time.

    • @r3d0c
      @r3d0c 7 лет назад +2

      criticism =/= annoying pathetic pretentious child repeating the same obvious thing in an emotional way to sound smart on the internet

    • @ValeryKharshats
      @ValeryKharshats 6 лет назад

      Sorry, but I can't listen this. So video not helpful for me. Thanks for sharing but it useless.

    • @RockstahRolln
      @RockstahRolln 6 лет назад

      We ARE Greatful! But try listening to this through your earphones... Make sure you have your ENT's number on hand

    • @rahilahmad4318
      @rahilahmad4318 5 лет назад

      Yup , the talk is indeed helpful. But it's Netflix and people have expectations about the audio/video quality.

  • @sonle8322
    @sonle8322 4 года назад

    30:24 the bold guy giving a thumbs up

  • @unnhao
    @unnhao 2 года назад +1

    wow nice, NGRX is like this type.

  • @screamz5057
    @screamz5057 7 лет назад

    Awesome,great job ! I follow

  • @javadoctor101
    @javadoctor101 5 лет назад

    FYI..ECMA proposal for observable (cancellable promises) was withdrawn..

  • @alexleung842
    @alexleung842 7 лет назад +1

    Pretty neat ideas going into redux-observables. I definitely never consider the case of needing to cancel a pending ajax request, so that probably means there are a bunch of unencountered bugs in my deployed code O.o I don't think I'll abandon my GraphQL setup for this, but maybe in my next React project I might give this a try.

    • @Avbanks23
      @Avbanks23 6 лет назад

      Alex Leung agreed 😔

  • @TechViewXYZ
    @TechViewXYZ Год назад

    I implemented this and was very excited about it 🙃but then after trying to inject it in the "new" configureStore from RTK; it didn't work as I'd expect (maybe I implemented it wrong) and after reading and reading, trying and trying... I saw that the project has been left abandoned since some time ago already and now exists something called thunks 🤣😿.
    The good thing is that if you are able to implement ReduxObservable in your project; thunks will be a piece of cake.

  • @KelvinWKiger
    @KelvinWKiger 5 лет назад +3

    Thank you Netflix UI "Engin-earing".

  • @scottith
    @scottith 7 лет назад +11

    The hash/link for this youtube video begins with `Aslncy`

  • @gowasu6562
    @gowasu6562 2 года назад +1

    One minute into the video and I’m wondering what about middleware?

  • @nicklandreth2527
    @nicklandreth2527 4 года назад

    Is this to do with me getting wierd thumbnails for youtube videos?

  • @onurcantasyurek7534
    @onurcantasyurek7534 5 лет назад

    thanks

  • @peerhenry
    @peerhenry 7 лет назад +8

    The audio is unbearable with my headphones. Luckily the subtitles work.

  • @lecturesoniesgatepreparati8554
    @lecturesoniesgatepreparati8554 3 года назад +1

    Great

  • @StephenRayner
    @StephenRayner 3 года назад

    For what was describe as the problem you can use redux thunk

  • @ValeriCFBG
    @ValeriCFBG 7 лет назад +1

    you could use promises and still have a "callback hell". That indentation example that everyone uses should not be listed first as one of the main reason to use promises instead of callbacks. It just drives the focus to the code quality instead of the real security and composition problems that are present when using callbacks.

    • @sunnymittal1906
      @sunnymittal1906 7 лет назад +2

      if you have callback hell with promises, you aren't using promises to their full potential. Instead of this `somePromise().then(function(...) { anotherPromise().then(function(...) { }) })`, you can do `somePromise().then(function(...) { return anotherPromise() }).then....`

  • @handsome_man69
    @handsome_man69 7 лет назад

    i miss the ocean, and sandy beaches

  • @mukulr5171
    @mukulr5171 11 месяцев назад

    🔥🔥🔥

  • @agusterodin
    @agusterodin 5 лет назад +1

    What are the advantages of using rxjs over redux-thunk for async operations?

    • @yalopov
      @yalopov 5 лет назад

      RxJS really shines when you're dealing with dispatching actions from UI events, it makes really easy to reason about because UI interactions are data streams and RxJS does have a lot of ways to handle those.
      You can do that with thunks too, but thunks are promises hooked to redux, and promises are very straightforward and easy to understand when you're triggering them once. When you're trying to handle event streams it gets really hard to manage what you would do with rxjs observables in just few lines of code

  • @dance2die
    @dance2die 4 года назад +1

    Second time watching this.
    1️⃣st time (familiar with Redux only), "It looks cool but what am I looking at here???"
    2️⃣nd time (after 2 days of learning RxJS): "Wow... I am able to see something now"...
    Let me come back in few weeks to see if I dig it completely. :)

    • @whiskeyburns5230
      @whiskeyburns5230 4 года назад

      @nabil libre no

    • @thatoneuser8600
      @thatoneuser8600 2 года назад +1

      Did you give up on ReactiveX? 😂

    • @dance2die
      @dance2die 2 года назад

      @@thatoneuser8600 Yes. I have. But at least I know when to make use of it :)

  • @peterkleinlich
    @peterkleinlich 7 лет назад

    @29:06 shouldn't action be called value in the ...switchMap(action => ajax("..." + value).map()... ) statement? - otherwise i don't get it.

    • @JayPhelps1
      @JayPhelps1 7 лет назад +1

      Yep, typo. Something like ajax('...' + action.payload)

  • @GifCoDigital
    @GifCoDigital 7 лет назад +134

    Netflix can make their own amazing TV shows but cant seem to film (or record audio) better than a high school student. FAIL!!!!!

    • @GifCoDigital
      @GifCoDigital 7 лет назад +1

      Raymond Martin your an idiot. this is Netflix. and they can't sort out a simple single channel audio setup that a teenage RUclipsr in their parents basement can easily pull off.
      this is actually so bad it hinders the msg. if you think otherwise YOU are watching these "wrong"

    • @GifCoDigital
      @GifCoDigital 7 лет назад

      Raymond Martin ok there high and mighty. You are the one who is implying you can watch a video "wrong".
      You sir are an idiot, and that's a label not a name.

    • @salvatoreshiggerino6810
      @salvatoreshiggerino6810 7 лет назад +1

      Well, they probably farm out all those shows to separate production companies, having no audio or video engineers on staff. That said, showing video on the internet is their bread and butter, so they should certainly for the sake of their reputation at least apply themselves even on side projects like this.

    • @se6619
      @se6619 7 лет назад +1

      you're*

    • @r3d0c
      @r3d0c 7 лет назад +4

      what's with these autist circlejerking 10 year olds? lol i doubt they actually learnt anything from the video, too busy being triggered and a bunch of sad pretentious twats in the comments

  • @grzegorzdvipek
    @grzegorzdvipek 7 лет назад +2

    Great! I love the architecture. But where did the name EPIC come from?! It doesn't say anything. It's not self-explaining. It could be simply called "mapper", and our lives would be simpler ;)

  • @HellWalkergame
    @HellWalkergame 7 лет назад +2

    I've been watching videos about react for the past week.. There weren't a single one where I didn't heard "ThreeDucks" instead of "Redux". Damn it... hahahahahaha

  • @Csk6124
    @Csk6124 7 лет назад

    cool~

    • @CaimAstraea
      @CaimAstraea 7 лет назад

      Hello ! :D Is RxJS popular in Korea ? :O I saw it even has the documentation translated in korean on the official RxJs site.

  • @joseaburt
    @joseaburt 3 года назад

    Sound good but!!! it does not convince me to change or implement it in my projects. So I continue with old one.

  • @modoran2000
    @modoran2000 7 лет назад

    hmmm, why not RxDux or RxDucks?

  • @MrDima123123
    @MrDima123123 Год назад

    Why not mobX?

  • @antoinelenoir7603
    @antoinelenoir7603 6 лет назад +4

    Redux saga do the same things right ?

  • @QuintonPike
    @QuintonPike 7 лет назад

    I wonder if he can say denounce one more time....

  • @audi88
    @audi88 7 лет назад

    Someone keeps stepping on my bottles.

  • @bool2max
    @bool2max 7 лет назад +6

    8:47 uhh, "some people don't know". I'm pretty sure Promises were intended to be used that way. Returning a promise from a .then callback is the core of promises.

    • @quorkquork
      @quorkquork 7 лет назад +6

      Doesn't mean that everyone knows it

  • @OmegaMindriel
    @OmegaMindriel 7 лет назад

    Correction: Default Promises cannot be cancelled.
    There are other implementations, like Bluebird Promises - they can be delayed, timeouted and, oh wait, Cancelled.

  • @slothsarecool
    @slothsarecool 7 лет назад +5

    You'd like Go channels, like this but less hacky, and Redux is super over complicated. CSP in JS would be nice for this sort of thing.

    • @nyahhbinghi
      @nyahhbinghi 7 лет назад

      are you saying there should be more generator usage in front-end JS?

    • @slothsarecool
      @slothsarecool 7 лет назад +1

      Yep, I don't think JS has quite enough defined there to unify things, but typically this sort of thing would just be pipelining coroutines. Lua's implementation is definitely a good example too, but it would stop us from having to define these APIs at the library level.

    • @nyahhbinghi
      @nyahhbinghi 7 лет назад

      doesn't CSP and Goroutines introduce some new forms of race conditions in JS via generators?

    • @michaelramos9755
      @michaelramos9755 7 лет назад

      Clojurescript?

  • @CalvinBelden
    @CalvinBelden 6 лет назад

    I think it's clear that RxJS can reduce the lines of production code we need to write in complicated, async cases. What I'm still not convinced of (and this talk completely skips over) is how to effectively unit test all this behavior.
    RxJS lets us compose complicated behaviors using the various Observable operators (switchMap, debounce, takeUntil, etc), and at the end of the day, we still need to verify that we've composed these behaviors correctly.
    Is there a good unit-testing story for these complicated epics? What would a unit-test suite look like for the autocomplete example mentioned in this talk? What about the multiplexed, bilateral web sockets example?
    It would be even cooler to compare the unit tests between the traditional callback/Promise based implementation with Observables. Is the testing code also simpler, more succinct?
    Thanks, really is a great video!

    • @ganeshgopalkrishnan1602
      @ganeshgopalkrishnan1602 5 лет назад

      I am not realy sure how to test multiplexed or bilateral senarios, but I do believe observables simply return an array of data over time. So basically when unit testing, we would construct an array of mock data and pass it to the component. and expect the result. Though, I am still not sure how to unit test the request cancel senarios

  • @mooshy5944
    @mooshy5944 4 года назад

    Just use redux-saga. Easy to read and works like a charm. No callback bullshit.

  • @obvious_things
    @obvious_things 7 лет назад

    video quality like camrip of 2007 year

  • @SuperQuwertz
    @SuperQuwertz 10 месяцев назад

    The audio quality could be better. And the focus of the camera too

  • @naythaniel
    @naythaniel 7 лет назад

    Isn't he just describing using finite state machines? Can't one just use a finite state machine instead of all of these tools? What am I missing?

    • @SimonMeskens
      @SimonMeskens 7 лет назад

      You're missing composability and asynchronicity. Basically, this acts more like the actor model than a finite state machine. You don't need all of those tools if you can write actor models, though, that's true.
      Mostly, though, it's a matter of taking what people use and building on it, versus trying to learn people new things. Also, finite state machines and actor models produce very subtle bugs, they take the load off by maintaining this for you, so you don't have to worry about those bugs.

    • @naythaniel
      @naythaniel 7 лет назад

      I think this is actually the "observer pattern", isn't it? I thought reactive programming in general was a formulation of the observer pattern. Although I suppose the observer pattern could be thought of as a specific implementation of the actor model.
      Anyway, you're totally right about the subtle bugs. There are a few aspects of rxjs (although not redux) that I find useful for the work I do and simplify the thinking behind some of the components I create. I'm still not sure why a project would need both, but rxjs is an interesting state management library in cases where the logic is too complicated for a basic state machine of some kind.

  • @paullefebvre6667
    @paullefebvre6667 5 лет назад

    Hé ouais c'est une très bonne explication. Néanmoins le point négatif de tout ça c'est que toutes les grosses entreprises de la mondialisation se sont emparées des technologies. Ok elles en ont fait quelque chose de bien organisé et de pratique à utiliser. Mais mince alors rien que cette vidéo est délivrée par Netflix.

  • @GiveMeAnOKUsername
    @GiveMeAnOKUsername 4 года назад +1

    I didn’t follow how this fits with synchronous Redux.

  • @arjunnayak9088
    @arjunnayak9088 10 месяцев назад

    It's been 6 years still Observables are not standardised in Javascript lol.

  • @MintOutdoors
    @MintOutdoors 7 лет назад

    Netflix is shit, the sound keeps going out of sync with the video, maybe you should have them in the same stream!!!

  • @mateusfernando5847
    @mateusfernando5847 6 лет назад

    At, ruclips.net/video/Yy7gFgETp0o/видео.html
    " The problem with this syntax is that a different callback is created each time the handleTabClick renders. In most cases, this is fine. However, if this callback is passed as a prop to lower components, those components might do an extra re-rendering." React Documentation.
    So i think this patterns should be avoid.
    Geat talk.

  • @iamclaytonray
    @iamclaytonray 7 лет назад +15

    "... don't Rx all the things".... Don't tell me how to live my life.... Haha.

  • @AndyThomasStaff
    @AndyThomasStaff 7 лет назад +4

    This was a bit hand wavey. "Doing async in RxJS is easy!" * shows a delay function * "It makes your code really easy to write" * shows an unreadable slide assumedly containing socket code * "any questions?"

    • @quorkquork
      @quorkquork 7 лет назад +2

      The slide was actually readable

    • @iamclaytonray
      @iamclaytonray 7 лет назад +2

      What? You think you will learn 100% of RxJS and redux-observable in a single 30 minute video? Haha. Not to mention, he did show a pretty complex problem with the websockets example. Anyway, when you build something better and do a better video in 30 minutes or less, let me know.

    • @vladimircicmanec6103
      @vladimircicmanec6103 6 лет назад

      That websocket slide was readable, valid and my god was it amazing! The talk was great, but that one slide blew me away. As someone who works with websockets all the time that was an incredible improvement of the workflow.

    • @StevenMcconnon
      @StevenMcconnon 5 лет назад

      Websocket code on screen
      const socket = WebSocketSubject.create("ws://stock/endpoint")
      const stockPickerEpic = (action$, store) =>
      action$.ofType('START_TICKER_STREAM')
      .mergeMap(action =>
      socket.multiplex(
      () => ({sub: action.ticker}),
      () => ({unsub: action.ticker}),
      msg => msg.ticker === action.ticker
      )
      .retryWhen(
      err => window.navigator.onLine ?
      Observable.timer(1000) :
      Observable.fromEvent(window, 'online')
      )
      .takeUntil(
      action$.ofType('CLOSE_TICKER_STREAM')
      .filter(closeAction => closeAction.ticker=== action.ticker)
      )
      .map(tick => ({type: 'TICKER_TICK', tick}))
      );

  • @kidequinox
    @kidequinox 7 лет назад +19

    Redux Saga anyone ?

    • @nyahhbinghi
      @nyahhbinghi 7 лет назад +4

      Redux Epic?

    • @doktora9292
      @doktora9292 6 лет назад +1

      I see a battle over here that should start.

    • @joshk2181
      @joshk2181 5 лет назад +1

      isnt the point of this to replace sagas?

  • @LeeGee
    @LeeGee 7 лет назад +1

    Is the intended audience really so unfamiliar with Promises that they don't know they can be chained...?

  • @lecturesoniesgatepreparati8554
    @lecturesoniesgatepreparati8554 3 года назад

    Computer science changed the whole hanity diecyion

  • @KelvinWKiger
    @KelvinWKiger 5 лет назад

    Your ears will start bleeding from 00:02 until the very end.

  • @petersuvara
    @petersuvara 5 лет назад +1

    Managing state stuff is not hard. Redux and React Native simply make it so difficult to follow state management under the guise of "simplification" that code become excessively obfuscated, difficult to read and follow and manage when things break. Introducing new developers to the code, independent of their experience with React Native is more overhead than any other system we have used. I am still unconvinced by React Native.
    People should remember that Visual Basic has been doing what's touted here since the 90s...

  • @twrkhanasparukh
    @twrkhanasparukh 3 года назад

    aka NgRx

  • @karlstein9572
    @karlstein9572 6 лет назад +1

    sadly song recording is bad...

  • @andrejbartko
    @andrejbartko 4 года назад

    your spinning logo is triggering the laptop fan...

  • @rayaqin
    @rayaqin 3 года назад

    "an reducer" ?
    fuck

  • @robotjeans
    @robotjeans 6 лет назад

    Sometimes I think React is a front for these endless tools "we must have". Ah the good ole days of HTML and plain JavaScript are sometimes missed.

    • @blastanoizz2
      @blastanoizz2 6 лет назад

      It reminds me of Java's good 'ol RMI except this time people are embracing it for some reason.
      And there's the whole learning curve:
      _You also realize that while before you were able to do:_
      _$(“.my-button”).click();_
      _to get a button to do something; it has now been about 3 hours and your one button doesn’t do anything._
      - hackernoon.com/thinking-in-redux-when-all-youve-known-is-mvc-c78a74d35133

  • @SuperSarhanWebdev
    @SuperSarhanWebdev Год назад

    Then came Reaxt Query 😂😂