RxJS Top Ten - Code This, Not That

Поділитися
Вставка

КОМЕНТАРІ • 292

  • @Fireship
    @Fireship  5 років тому +165

    RxJS has really helped me level-up as a JS dev, but I always feel like there's more to learn. BTW, I used zero-config webpack and plain JS to run the code. Source code is in the video description.

    • @MK-sh1sm
      @MK-sh1sm 5 років тому +4

      Thanks for the video. It is an excellent summary. Do you think you can also cover how to write tree-shakeable packages?

    • @MarcoSync
      @MarcoSync 4 роки тому

      I really want to see RxJS in depth using Angular and Firebase! Maybe a new course? #Go🔥🚀 🤓

    • @aidemalo
      @aidemalo 3 роки тому

      pipe(share()) description messed up i think, if you will use interval() for example, both subscribers will get the value, without need of shareReplay() 5:34

  • @troythompson2
    @troythompson2 5 років тому +298

    Been working with RXJS for years. This video just covered hundreds of pages of documentation. Thanks Jeff!

    • @Fireship
      @Fireship  5 років тому +37

      Haha, does documentation even exist? I always use 3rd party resources for RxJS.

    • @pedrob.lescanopasquet8460
      @pedrob.lescanopasquet8460 5 років тому

      I was thinking all the video the same thing

    • @DavidSmith-ef4eh
      @DavidSmith-ef4eh 5 років тому +2

      I guess I am lucky that I've watched this video before reading the documentation...

    • @ultimatesheep
      @ultimatesheep 2 роки тому

      His name is jeff?

    • @jp46614
      @jp46614 2 роки тому

      that library is so useless it's just for lazy people

  • @majid70111
    @majid70111 5 років тому +112

    If there would be a nobel prize for teaching dev stuff in an easy way this guy should get it!
    Thanks jeff :)

  • @patrickmullot73
    @patrickmullot73 5 років тому +68

    Easy peasy! I love RxJS, so powerful! You can do really amazing stuff with it, but the most interesting part is the intellectual challenge it puts you through!

    • @Fireship
      @Fireship  5 років тому +14

      Totally, RxJS and TS are two tools that have really helped me level-up as a JS developer in recent years.

    • @swaminathbera6407
      @swaminathbera6407 3 роки тому +1

      @Fireship can you make a video on learning path , or how to read docs. I'm stuck at reading docs, because I can't understand the complex syntax writing

    • @swaminathbera6407
      @swaminathbera6407 3 роки тому +1

      Or How to traverse through docs

  • @realchrishawkes
    @realchrishawkes 5 років тому +37

    This is awesome, thank you for sharing!

  • @SondreSrbye
    @SondreSrbye 5 років тому +33

    I didn't fully understand RxJS before this. Thx a lot

  • @deyanshotev3137
    @deyanshotev3137 3 роки тому +2

    I've never learned so many things for 15 mins in my development carrier.
    Insane!
    Thank you!

  • @alexkrauchi9535
    @alexkrauchi9535 5 років тому +1

    It is insane how much you're able to break down complex topics to the essentials. Awesome, thx!

  • @NavedRasul
    @NavedRasul 5 років тому +2

    I find Fireship tutorials to be intuitively graspable. This one is, in particular, very well formed and effectively elaborated. Well done guys! 👍

  • @ImperiumLibertas
    @ImperiumLibertas 5 років тому +11

    Jeff back at it again with the amazing tutorials! You have answered so many of my questions. I am always sure to share your videos with my co-workers. You have a gift for demonstrating complex concepts in bite sized clips..

    • @Fireship
      @Fireship  5 років тому +1

      Thank you! This one was really difficult to keep short and only covered a small fraction of the available Rx operators.

    • @ImperiumLibertas
      @ImperiumLibertas 5 років тому

      When you have people calling rxjs easy, you know you've done right.

  • @bennakaska7472
    @bennakaska7472 5 років тому +1

    Excellent way to simply the complex with examples on when developers may want to use different parts of rxjs

  • @WolfrostWasTaken
    @WolfrostWasTaken 5 років тому +3

    Hours and hours spent on the RxJS docs and I realize that I could have just waited for this video! ahah :D Please keep up the good work

  • @g-luu
    @g-luu 5 років тому +1

    i've been working with Rx for sometime now and i have to admit that plumber example was GOLD, it all makes sense now. Thank you.

    • @Fireship
      @Fireship  5 років тому +1

      WINNER! You won the T-shirt, send me a direct message with your mailing address and size :)

  • @dominikseljan3043
    @dominikseljan3043 5 років тому +6

    Great video Jeff! I hope you make more of them for RxJS .

  • @georgiyzhuravlev9350
    @georgiyzhuravlev9350 5 років тому +5

    Great video, thanks! There are tons of RxJS operators out there and some of them (besides most commonly used shown in this video) are still confusing. Or maybe unnecessary (which is not very likely :) Very interesting topic, please go on!

  • @ikezedev
    @ikezedev 5 років тому +1

    This is so cool..... I can understand cos I once set out a day to try my hands at all Rxjs operators, this video just saves you months of stress. Thanks Jeff

  • @diabolo1
    @diabolo1 5 років тому

    Thanks for keeping up with the videos! Your reviews help me keeping up to date!

  • @julienconnault1612
    @julienconnault1612 3 роки тому +1

    You're the only coding tutorial channel that I put on .75x rather than 1.5x

  • @divinedela9125
    @divinedela9125 5 років тому +5

    Callback Hell Animation 0:45 ...I love it

  • @NAMBINRAJAN
    @NAMBINRAJAN 5 років тому

    One of the ever best channel i think, will help my js career forward.
    Though i had to watch any of video twice.....
    My search starts from your videos....
    Stay blessed 🙏..expecting more such pratical videos..

  • @mawulijo
    @mawulijo 5 років тому +3

    Before I watch. I wanna say I'm glad rxjs is covered in this series. I just get confused at the numerous examples out there. Moment of truth.

    • @Fireship
      @Fireship  5 років тому +4

      Yes, I could probably make a sequel to this one. RxJS is complex library.

  • @mittalsmiti
    @mittalsmiti 3 роки тому

    It is the best video on RxJs I have come across so far! Very well explained and to the point

  • @ashdebash2008
    @ashdebash2008 2 роки тому

    What a great video, I couldn't get a proper grasp on the Observable pattern until i saw this. Many thanks.

  • @venkyakshaya
    @venkyakshaya 4 роки тому

    Wondering why I didn't find this channel sooner. Thank you Jeff!

  • @GabrielLima-og5qd
    @GabrielLima-og5qd 5 років тому

    The best video about RxJs on UA-cam. People need to understand that this is not for beginners and if you read RxJs documentation and understand the minimal you'll see why this video is so good.
    To the author (don't know your name): keep doing amazing videos like this, well edited, in a great pace and straight to the point like you're doing. We need more channels like yours in UA-cam.

  • @bradleytaniguchi1187
    @bradleytaniguchi1187 5 років тому

    I think I learned more watching this video than reading docs all over the internet on RXJS! Great vid!

  • @rezaasgary1442
    @rezaasgary1442 2 роки тому

    the best thing about your videoes is how fast you teach the subjects no boring amazing speed talk

  • @oksanaserhiivna2634
    @oksanaserhiivna2634 5 років тому

    Another nice thing is that along with providing really useful and serious information, you make one smile due to those amusing video 'injections'. :) Thanks for both benefits. :)

  • @zepipoco
    @zepipoco 5 років тому

    Nice! You really nailed this one Jeff! You just took knowledge that took me months into a 15 min vídeo! Can't wait to see a more advanced followup!

  • @TwoTeaTee
    @TwoTeaTee 3 роки тому

    Apart from sheer knowledge, the video are also soothing to watch!

  • @BraxtonDiggs
    @BraxtonDiggs 5 років тому

    amazing work! Been using rxjs and didn't fully grasp what I was doing until this video

  • @lokeshsaini7377
    @lokeshsaini7377 5 років тому +1

    Thanks for the video. You always made the video on topic that I want. I am not so good in JavaScript, Angular but your videos helping me a lot to improve my knowledge. Again thanks for all videos.

  • @narcodico
    @narcodico 5 років тому +3

    You've pretty much covered the basics of rxjs. For newcomers to rx some more details regarding why only the first subscription emits when using share() and why not the second sub also, would have been welcomed I guess :) I would personally love to see this very same approach but for rxdart. Maybe have this series go toe by toe with a dart version. You could also create some rx videos that go in depth on related operators (eg: switchMap, mergeMap, concatMap and exhaustMap) with similarities and differences between them. This might save a lot of people from misusing switchMap since it can cause some really bad side effects if not properly used. I think an advanced video on hot observables would be cool to see, especially for dart where things are different from js, especially when it comes to hot vs cold stream.

    • @Fireship
      @Fireship  5 років тому +4

      Great points, I would consider creating a full Rx course if people request it. There are a lot of subtle gotchas. I do plan on making a detailed video covering Dart streams + RxDart in the future :)

  • @puriajahanbani6636
    @puriajahanbani6636 2 роки тому

    Thanks a lot for making this video. I don't know how you described everything so easily and simple.

  • @harpymaslow
    @harpymaslow 5 років тому +1

    Best explanation of RxJS. You rock ! Thx Jeff

  • @pax4698
    @pax4698 5 років тому

    Huuugely helpful. Thank you very much! Please consider making more more videos on RxJS.

  • @ritesisright
    @ritesisright 2 роки тому +2

    I will need to watch this TEN times 😀.

  • @dallinparker2387
    @dallinparker2387 4 роки тому

    Thank you for the amount of content you put out, the quality of that content, and sharing your knowledge.

  • @k1ngjulien_
    @k1ngjulien_ 5 років тому +18

    Oh my God! 10:57 I've been doing this and I absolutely hate it! I KNEW there had to be a better way to do this.
    Thanks for making this Video!

    • @Fireship
      @Fireship  5 років тому +1

      Very common, switchMap will change your life.

    • @k1ngjulien_
      @k1ngjulien_ 5 років тому

      @@Fireship Yes, I'll try it out as soon as I can 👍👍

    • @noext7001
      @noext7001 5 років тому

      @@Fireship , i don't understand why switchMap is better than the nested subscription, its still a nested action , the code is not shorter or anything like that

    • @olivereisenbarth5476
      @olivereisenbarth5476 5 років тому +3

      @@noext7001 Switchmap unsubscribes before subscribing to a new (outer) observable. Watch ua-cam.com/video/rUZ9CjcaCEw/v-deo.html

  • @augustineri93
    @augustineri93 5 років тому

    This is the first video I have seen on your channel and man you have cleared up a lot about RxJS. This is awesome... definitely subscribing and keep it up

  • @lukemorrison8719
    @lukemorrison8719 4 роки тому

    Very elegant. Loved the piper theory. Sounded a bit rushed but otherwise very informative and succinct. Well done!

  • @eddiejaoude
    @eddiejaoude 5 років тому

    More RxJS please! Its so powerful but can be tricky. Multiple http requests and joining data if relational. Thank you

  • @ang3loux
    @ang3loux 3 роки тому

    OMFG! You guys are amazing. Thx for sharing this 🚀

  • @JonWood
    @JonWood 5 років тому

    This is the most useful video on RxJS I've ever seen! Thanks for making this!

  • @AxelRock
    @AxelRock 5 років тому

    Thank you ! I used for a while, but didn't quite get the nuances between some of these operators. It was super useful.

  • @AlessandroTaricani
    @AlessandroTaricani 5 років тому

    Finally a clean and good explanation about RxJS, i'm using it on Angular and i love it! On thing could be useful for developers that come (like me) from Promises.. a video with the differences and when use one instead of the other.

  • @javascript_developer
    @javascript_developer 3 роки тому

    thanks for the awesome video. commenting before watching. because i really trust your "code this not that" related videos. keep doing it. thanks :)

  • @misterkevin_rs4401
    @misterkevin_rs4401 5 років тому

    I Really love RxJS, been learning and getting better every year!

  • @happynewyearw
    @happynewyearw 5 років тому

    Awesome quality again! Thank you!
    Hope to see some future video on rxdart + firestore flutter examples with all the useful rx operators.
    I actually very need to mobile dev and programming as whole, and I've been searching for the best way to sync app's data that store on firestore to local storage, my current idea is to use a RxVMS architecture with a manager using rx to catch any update on firestore and 1. check/update the local copy of data. 2. Provide stream to the streambuilder in the view.
    still working on it! :P

  • @oislek34
    @oislek34 Рік тому

    good reasoning between episodes, but you need to split the screen so it updates instantly.
    and your print method output is funny af. thanks.

  • @amirhoseinfarhadi2268
    @amirhoseinfarhadi2268 3 роки тому +1

    It was so good im already waiting for the next one

  • @Blixzful
    @Blixzful 5 років тому +3

    Very nice as usual.
    I've become a big fan of RxJs in Angular too, can you do some more protips on that topic?
    Http req's, Auth, Data state management etc. :) thnx Jeff

  • @duncan-dean
    @duncan-dean 5 років тому

    Thanks for this! Was really waiting for one on RxJS!

  • @EduardKaresli
    @EduardKaresli 5 років тому

    Watching this video at work... man it's so dense I'll have to rewatch at home at 0.75 the speed... but very nice, thanks a lot!

  • @pluscday2
    @pluscday2 3 роки тому

    Awesome video for Rxjs. I watched for 3 times. great thanks Jeff!!!

  • @x-lightsfs5681
    @x-lightsfs5681 5 років тому +5

    Why didnt i get notified about this? I saw it on slack, its such a great video, its a shame some people may miss it mecause of yt

    • @Fireship
      @Fireship  5 років тому

      I have not figured out how to appease the UA-cam algorithm gods ¯\_(ツ)_/¯

    • @patrickmullot73
      @patrickmullot73 5 років тому +2

      check your code for :
      JeffsVideos.pipe(
      switchmap( v => VictoriaSecret)
      ).subscribe()
      That might be the issue ;-)

    • @bennakaska7472
      @bennakaska7472 5 років тому +1

      You have to click the bell now to get an update. So Jeff you should start your videos now with "If you find this video helpful, like, subscribe and press the bell"

    • @x-lightsfs5681
      @x-lightsfs5681 5 років тому

      @@bennakaska7472 i had it clicked

  • @hos7012
    @hos7012 2 роки тому

    This channel is magic i get addicted to it, could i ask the author which do u prefer React native vs flutter?

  • @stw00lf
    @stw00lf 5 років тому

    Another awesome video! I would like to see more about rxjs 🎩

  • @vamidicreations
    @vamidicreations 4 роки тому

    Jeff amazing stuff man this helped me out alot. It showed me ways to solve problems easier with RxJS.

  • @idemchenko-js
    @idemchenko-js 4 роки тому +1

    Love the video! But I guess, the most interesting part happens in the languages that support multithreded execution, like in the case of Java with RxJava. Think about reading multiple files and processing them in parallel using such a neat API.

  • @punsmith
    @punsmith 4 роки тому

    RxJS is basically something that the team of Angular should have tried to promote a whole lot more as being deeply ingrained in Angular. It always felt like the Angular team was too careful about telling people that the framework was using it extensively, despite being such an amazing choice. With RxJS I find myself having full control over the direction of data and with Dependency Injection in Angular, it becomes amazingly easy to create centralized services for a very understandable and easily executable Observer Pattern.

  • @riddheshganatra2223
    @riddheshganatra2223 5 років тому

    Rxjs is superb and you help us understand better!!!

  • @tekkkinho
    @tekkkinho 5 років тому

    Thx for this well done, u r helping a lot of people.

  • @MrChickenpoulet
    @MrChickenpoulet 5 років тому

    I like your new intros ! Keep up the good work :D

  • @whiskerAndPetal
    @whiskerAndPetal 4 роки тому

    These videos are like my daily doses to boost up my skills. 👍

  • @StephenRayner
    @StephenRayner 3 роки тому

    Excellent library thank you to sharing this

  • @marekkazimierczak9210
    @marekkazimierczak9210 Рік тому

    I do wanna see more of RxJS 🚀

  • @FreshMattizl
    @FreshMattizl 5 років тому

    Man thank you for those videos! I couldn't wrap my head around RxJS, but this helped a lot. Had to set speed to 0.75 as english is not my first language though lol

  • @robocop30301
    @robocop30301 5 років тому

    This has helped me so much. Thank you, and please keep it up!

  • @shashank5383
    @shashank5383 5 років тому

    Thanks Jeff, I was waiting some tutorial on RxJs

  • @heavestern
    @heavestern 4 роки тому

    10:57 best way wold be concatmap , because u wouldnt need to leave and subscribe but in pipe u can add multiple concatmaps. Last one u can use take(1) too ,u are not limited with only those 2 options

  • @reaper84
    @reaper84 6 місяців тому

    Really useful explanations!

  • @mattiaesposito5525
    @mattiaesposito5525 5 років тому

    as always a nice short and simple video a very amazing tutorial thanks

  • @SoundFilmDesign
    @SoundFilmDesign 5 років тому

    Great vid! Always great content from Fireship!

  • @iamshoaibkhalil
    @iamshoaibkhalil 2 роки тому

    Congratulations for 1M subscribers

  • @rogeroliveira4973
    @rogeroliveira4973 3 роки тому

    RxJS is gigantic! In fact, we've some courses specifically designed to learn its concepts.

  • @dennisbarzanoff9025
    @dennisbarzanoff9025 5 років тому

    I've waited for this for so long

  • @narendrasinghrathore1012
    @narendrasinghrathore1012 5 років тому

    Design patterns, do make a series on gang of four design patterns.
    Great video.

  • @Oswee
    @Oswee 5 років тому

    Really would like to see more real world examples when working with composable components and UI state. LitElement as example and multiple possible custom context menus with only one open context menu per app shell. As well, fetching data and applying it to store and rerendering UI.

  • @ssougnez
    @ssougnez 4 роки тому

    Pfff that's a shame... That we cannot like a video more than once ;-) awesome video.

  • @mfjones7879
    @mfjones7879 3 роки тому

    Thank you very much . This helped a lot.

  • @SuperZakro1984
    @SuperZakro1984 5 років тому +2

    Great video. thx. Do you know if there is an operator that I can use as a conditional?

    • @Fireship
      @Fireship  5 років тому

      Not exactly, but you can implement conditional logic in different ways depending on what you need to happen. For example, `filter` is like saying "if condition, then emit value"

    • @narcodico
      @narcodico 5 років тому

      You can filter out a source observable using filter into multiple mutual exclusive streams. Later on you can even use merge to combine the transformed results back into a single stream.

  • @AbhiBhardwaj1289
    @AbhiBhardwaj1289 4 роки тому

    Superb Explanation

  • @sagnikpradhan3594
    @sagnikpradhan3594 5 років тому

    We need more *Code this not that*

  • @sandiphob
    @sandiphob 5 років тому

    This was an awesome video and super digestible!

  • @techvolta
    @techvolta 5 років тому

    Nice video! RxJS is really powerful and forkJoin is one of my favorites.

  • @realworldcomputing1044
    @realworldcomputing1044 3 роки тому

    Awesome video, what is your editor's color scheme?

  • @vivekgiri2238
    @vivekgiri2238 5 років тому +1

    Keep up! Please create a video on nativescript as well 😋

  • @delta4v
    @delta4v 5 років тому

    Please add more scenarios of rxjs. You can make a series of it.

  • @osiriscarrillo4221
    @osiriscarrillo4221 5 років тому

    Great video. Talking about observables, could you make a video about interceptors and catch error from angular ?

  • @LukasPukenis
    @LukasPukenis 4 роки тому

    Wow, a good video and a good live demo, all prepared and served for easy watching in 2019 with no "hit the bell and subscribe"???

  • @kevinfredericks2335
    @kevinfredericks2335 2 роки тому +1

    RxJS is the perfect tool to stop backend-only developers from dunking on their frontend coworkers. A lot of backend spaghetti can be solved with pipes and streams.

  • @RobertKing
    @RobertKing 5 років тому

    thanks for the vid, will recommend my angular devs take a look at this for sure :)

  • @grzegorzsokalski7328
    @grzegorzsokalski7328 5 років тому

    Jeff ur viedos helping me at work THANK U soooooooooooo much!

  • @jagdishsinhjadeja9623
    @jagdishsinhjadeja9623 5 років тому

    need more complex video on rxjs thanks

  • @alexzin1
    @alexzin1 3 роки тому

    Do you recommend using this rxjs observables on little angular projects or only in big projects will make a difference? Like that subscrible thing is really necessary if you just wanna make a small site on angular

  • @JancoBH
    @JancoBH 5 років тому

    Thank you so much for this video, I needed it 😍

  • @NourElGhamry
    @NourElGhamry 5 років тому

    Amazing Jeff as usual 💪

  • @dealloc
    @dealloc 5 років тому

    If you like reactive functional programming and want to write a http server using it, I can recommend marblejs/marble :)

  • @or.o.s.t8190
    @or.o.s.t8190 4 роки тому +1

    What's the reason for the dip in downloads on Jan 6(at 0:33) through all packages?

    • @ChristianCoxIsCrickkills
      @ChristianCoxIsCrickkills 2 роки тому

      Holidays, when people take time off. The dip starts around the end of December.