The Story of Concurrent React

2,161 days. That's how long the React team has been working on this release. This video tells that story.

Пікірлер: 242

  • @RasmusSchultz
    @RasmusSchultz2 жыл бұрын

    Five years invested in workarounds (mind you, not solutions) to problems inherent to the React model. The concurrency applies not to updating the DOM (which you can't do concurrently) but to all the extra work React has to do *before* updating the DOM. All this scheduling work accomplishes (if used correctly) is optimize *perceived* performance - but the framework is actually net slower than it was before doing this extra work. Meanwhile, other frameworks such as Solid, Svelte, Imba and others have moved on to a model that updates the DOM directly, instead of doing all this unnecessary work on an in-memory duplicate of the entire DOM, which has to be reconciled with the real DOM before doing actual DOM updates. React keeps adding layers of complexity to get around a fundamental design issue - and developers seem to have the perception that all this extra complexity is inherently necessary, and even ironically take pride in knowing how to apply all the new performance features to achieve acceptable performance. Meanwhile, other frameworks are moving on to much simpler models, where these performance features aren't even necessary in the first place. Regardless of how pointless this effort is, there's a market for it, there is job security, and so on - apparently that's the only thing governing the success of any framework in this industry today. 😕

  • @uidotdev

    @uidotdev

    2 жыл бұрын

    Thanks for watching!

  • @oussamabenmansour5375

    @oussamabenmansour5375

    2 жыл бұрын

    what other frameworks would you suggest ? im still new to react and i would rather not invest too much into it if another framework is objectively better

  • @TheNewton

    @TheNewton

    2 жыл бұрын

    Perception of performance is often more important than factual performance when it comes to UI, but doubly so in the boardroom.

  • @dave4148

    @dave4148

    2 жыл бұрын

    "optimize perceived performance - but the framework is actually net slower than it was before doing this extra work" -- you've just described horizontal scalability

  • @johnjackson6262

    @johnjackson6262

    2 жыл бұрын

    Are you saying it's possible to have component based architecture, rerender on state and update the DOM directly in a single page application without reload and without a reconciler? If you could recreate react without the diffing on DOM component and no major drawback then people should start writing the library.

  • @thecastiel69
    @thecastiel692 жыл бұрын

    Harambe was like father to me

  • @uidotdev

    @uidotdev

    2 жыл бұрын

    🖤🖤

  • @tonytino139
    @tonytino1392 жыл бұрын

    Excellent work as always. Especially appreciated the love for Harambe. He's eternalized in the test suite of a code base I worked on for several years and will always hold a special place in my heart. 🖤 🦍

  • @uidotdev

    @uidotdev

    2 жыл бұрын

    RIP 🖤 (Thanks for watching!)

  • @ritabest17
    @ritabest172 жыл бұрын

    As always, excellent presentation! Thanks, Tylor, for taking the time - you always take these high-level concepts and break them into manageable, bite-sized, engaging content. I always learn something new and interesting.

  • @uidotdev

    @uidotdev

    2 жыл бұрын

    That means so much. Thank you!

  • @LaxMariappan
    @LaxMariappan2 жыл бұрын

    Becoming a fan of your work Tyler. Glad to see your effort delivers quality output and also well received by devs!🔥

  • @uidotdev

    @uidotdev

    2 жыл бұрын

    Thank you Lax!

  • @rohitteja
    @rohitteja2 жыл бұрын

    This is by far the simplest and best video I've seen on React 18. I'm now a fan!

  • @uidotdev

    @uidotdev

    2 жыл бұрын

    Thank you! Glad you enjoyed it!

  • @derockx
    @derockx2 жыл бұрын

    First time seeing this channel, and I gotta say, the animation and quality is amazing! Keep up the good work!

  • @sle6423
    @sle64232 жыл бұрын

    Continuously stunned at the level of research and quality put into these videos. Just absolutely incredible

  • @uidotdev

    @uidotdev

    2 жыл бұрын

    This comment and your other one means a lot. Thank you!

  • @Kalazt
    @Kalazt2 жыл бұрын

    Another video, another banger. Thank you for producing such high quality videos for us devs. Always pleasure to learn through these

  • @uidotdev

    @uidotdev

    2 жыл бұрын

    Thanks for commenting! ❤️

  • @shachi5982
    @shachi59822 жыл бұрын

    This made so many things clear! Thank You for your work. ✨

  • @WajuAbolarin
    @WajuAbolarin2 жыл бұрын

    Your content literally made me pause to check if I had subscribed, this is some top shelf content.

  • @uidotdev

    @uidotdev

    2 жыл бұрын

    ❤️❤️❤️

  • @walidn2295
    @walidn22952 жыл бұрын

    really great context about async rendering in React ! Really cool to have alternative apis for delaying user input (debouncing/throttling) user input like useDeferredValue

  • @uidotdev

    @uidotdev

    2 жыл бұрын

    Glad you enjoyed it!

  • @kohelet910
    @kohelet9102 жыл бұрын

    Coming from today's newsletter 😎 thank for this clear and really interesting video !

  • @uidotdev

    @uidotdev

    2 жыл бұрын

    Thanks for watching!

  • @AbdelhameedG
    @AbdelhameedG2 жыл бұрын

    Thank you, Tyler, quality content as usual.

  • @uidotdev

    @uidotdev

    2 жыл бұрын

    Thank you!

  • @Mixesha001
    @Mixesha0012 жыл бұрын

    Loving your content, keep it up!!

  • @uidotdev

    @uidotdev

    2 жыл бұрын

    Thank you!

  • @saurabh75prakash
    @saurabh75prakash Жыл бұрын

    Glad that I discovered your channel. Thanks 🙏

  • @SpaceGravy
    @SpaceGravy2 жыл бұрын

    First time discovering this creator, liked, subscribed and commented. Nice job.

  • @muhammadahmedjaved7691
    @muhammadahmedjaved7691 Жыл бұрын

    your videos are very very very informative, thank you very much for explaining all these things brilliantly

  • @manuelalfonzoml
    @manuelalfonzoml2 жыл бұрын

    Its scary how small this channel is. Keep the awsome work man ❤️🔥

  • @uidotdev

    @uidotdev

    2 жыл бұрын

    We'll get there. Thanks for watching!

  • @riddixdan5572
    @riddixdan55722 жыл бұрын

    awesome high quality content. I'm surprised why you don't have millions of subscribers yet :D

  • @uidotdev

    @uidotdev

    2 жыл бұрын

    Thank you!

  • @zakhariihusar6975
    @zakhariihusar69752 жыл бұрын

    This video made me subscribe. Wonder how i haven't stumbled on the channel before

  • @alexbrown7624
    @alexbrown76242 жыл бұрын

    It was smart that they went with the approach of concurrent "features", instead of an all or nothing concurrent "mode"

  • @espressothoughts
    @espressothoughts2 жыл бұрын

    Just found the channel. Had to subscribe. Great work!

  • @uidotdev

    @uidotdev

    2 жыл бұрын

    Welcome!

  • @Matt36788
    @Matt367882 жыл бұрын

    Great video and fantastic explanation, thanks heaps!

  • @uidotdev

    @uidotdev

    2 жыл бұрын

    You're welcome. Thank you for watching!

  • @chrisnguyen5800
    @chrisnguyen5800 Жыл бұрын

    Have to subscribe immediately after watching your video. Appreciated

  • @arpitdubey5938
    @arpitdubey59382 жыл бұрын

    Loved the video Tyler, keep it up.

  • @uidotdev

    @uidotdev

    2 жыл бұрын

    Thank you!

  • @heyjitendra
    @heyjitendra2 жыл бұрын

    Actually I am new to React. I didn't get much of the things but liked your presentation style and teaching style.

  • @uidotdev

    @uidotdev

    2 жыл бұрын

    Thank you!

  • @fadeldrissitoubbali944
    @fadeldrissitoubbali9442 жыл бұрын

    one of the best channels. keep going.

  • @uidotdev

    @uidotdev

    2 жыл бұрын

    That means a lot. Thank you!

  • @pope7
    @pope7 Жыл бұрын

    Great videos, learning a lot.

  • @bahaarizk2834
    @bahaarizk28342 жыл бұрын

    Wow man! Time to binge watch your content

  • @uidotdev

    @uidotdev

    2 жыл бұрын

    Welcome!

  • @tomross4599
    @tomross45992 жыл бұрын

    This was so helpful, thank you! I still have one niggle: Your Suspense example conflated empty state and loading state.

  • @mohtashimali581
    @mohtashimali5812 жыл бұрын

    lovinng the content

  • @uidotdev

    @uidotdev

    2 жыл бұрын

    Thank you!

  • @johannes.evol.
    @johannes.evol.2 жыл бұрын

    Thanks for the awesome content

  • @rtorcato
    @rtorcato2 жыл бұрын

    The react team left us in Suspense!

  • @uidotdev

    @uidotdev

    2 жыл бұрын

    🥁

  • @vincenguyendev
    @vincenguyendev2 жыл бұрын

    It's a great explanation I've ever seen , I've been struggling to understand Suspense and useTransition hook ;)

  • @uidotdev

    @uidotdev

    2 жыл бұрын

    Glad it was helpful!

  • @rand0mtv660
    @rand0mtv6602 жыл бұрын

    What I found fascinating about this is how much preparation work and things in advance they had to do in order to get to here. It's not something that was decided and done in 6-12months. It took years, it's crazy.

  • @uidotdev

    @uidotdev

    2 жыл бұрын

    Totally. Lots of thought and patience.

  • @renatosardinhalopes6073

    @renatosardinhalopes6073

    2 жыл бұрын

    I think it's more like "We can't do this thing right now, but we can do this other thing that would set us in the path for the thing we wanted, and it makes sense to do it because it benefits us" Less of preparation and more of making the right things that could lead to the other big thing

  • @rand0mtv660

    @rand0mtv660

    2 жыл бұрын

    @@renatosardinhalopes6073 yeah probably. Doesn't make it less impressive in my opinion.

  • @spicybaguette7706
    @spicybaguette77062 жыл бұрын

    RIP Harambe

  • @uidotdev

    @uidotdev

    2 жыл бұрын

    🍻

  • @gofudgeyourselves9024
    @gofudgeyourselves90242 жыл бұрын

    I love these kind of videos . Do it for more technologies

  • @uidotdev

    @uidotdev

    2 жыл бұрын

    Planning on it. Thank you for watching!

  • @zummotv1013
    @zummotv10132 жыл бұрын

    Finally more people are viewing this amazing content .

  • @uidotdev

    @uidotdev

    2 жыл бұрын

    ❤️

  • @AndersonSilvaMMA
    @AndersonSilvaMMA2 жыл бұрын

    Really great content!

  • @uidotdev

    @uidotdev

    2 жыл бұрын

    Appreciate it!

  • @akashpal9691
    @akashpal96912 жыл бұрын

    Over the years, it's easy to loose track of context. This video sums up.

  • @uidotdev

    @uidotdev

    2 жыл бұрын

    So glad it was helpful!

  • @juliansoto2651
    @juliansoto26512 жыл бұрын

    2 thousand freaking days! For something that we probably don't need, for a library that will probably be replaced in the next 3 years.

  • @uidotdev

    @uidotdev

    2 жыл бұрын

    Thanks for watching though!

  • @DanKaschel

    @DanKaschel

    2 жыл бұрын

    Oh definitely. Most popular framework will totally be replaced in 3 years. Sure.

  • @juliansoto2651

    @juliansoto2651

    2 жыл бұрын

    @@DanKaschel it doesn't matter if it's the most popular, many libraries have been replaced before, React is no different and WILL certainly be replaced. I wouldn't have said this 1 or 2 years ago, but now most people are aware of React's flaws that we try really hard to avoid React, whether it's using a patch meta-framework or another library. I personally hope it's solidjs, maybe it's svelte idk (both of these have greater levels of satisfaction than react btw)

  • @yogikatba
    @yogikatba2 жыл бұрын

    These story videos are amazing ✨. Please cover vue/nuxt as well.

  • @uidotdev

    @uidotdev

    2 жыл бұрын

    Planning on it!

  • @patrickeriksson1887
    @patrickeriksson18872 жыл бұрын

    Great content; subscribed

  • @uidotdev

    @uidotdev

    2 жыл бұрын

    Welcome!

  • @KennethBoneth
    @KennethBoneth2 жыл бұрын

    The quality of these videos is unbelievable

  • @uidotdev

    @uidotdev

    2 жыл бұрын

    Thank you!

  • @zemaumm
    @zemaumm2 жыл бұрын

    Hey! Nice video. What tool do you use to animate these videos ? :)

  • @Ahmed2lBadry
    @Ahmed2lBadry2 жыл бұрын

    Great work 👏

  • @uidotdev

    @uidotdev

    2 жыл бұрын

    Thank you!

  • @oivinf
    @oivinf2 жыл бұрын

    Great video. What font is that on your headlines? Very modern and clean, yet interesting font

  • @ozgursulum4116
    @ozgursulum41162 жыл бұрын

    Great content ty.

  • @uidotdev

    @uidotdev

    2 жыл бұрын

    Thank you!

  • @00ch00
    @00ch002 жыл бұрын

    I wish Harambe was still around to see React 18 😭

  • @uidotdev

    @uidotdev

    2 жыл бұрын

    I like to think that he's using React 18 in heaven right now.

  • @FlorianGamp
    @FlorianGamp2 жыл бұрын

    Awesome video!

  • @uidotdev

    @uidotdev

    2 жыл бұрын

    Thank you!

  • @rasmusmerzin
    @rasmusmerzin2 жыл бұрын

    Terms low level and high level are so confusing in inherently high level ecosystems.

  • @XRoydX
    @XRoydX2 жыл бұрын

    Wow impressive video. You have my sub :)

  • @uidotdev

    @uidotdev

    2 жыл бұрын

    Welcome!

  • @ikbo
    @ikbo Жыл бұрын

    Beautiful tribute to Harambe. RIP

  • @omedjamal1056
    @omedjamal10562 жыл бұрын

    Great video, thanks. what do you think about the future of Svelte (Sveltekit)

  • @uidotdev

    @uidotdev

    2 жыл бұрын

    It's bright! We'll have a video on it soon.

  • @jagsexe
    @jagsexe2 жыл бұрын

    Great explanation :)

  • @uidotdev

    @uidotdev

    2 жыл бұрын

    Thank you!

  • @soccermatrix
    @soccermatrix2 жыл бұрын

    One day React is going to be awesome...

  • @gg-gn3re
    @gg-gn3re2 жыл бұрын

    I've done this on our corporate's multi user client management/invoicing/payroll system for like 10 years now. I guess it's about time, maybe one day these things will be usable instead of me having to make everything myself. RIP harambe

  • @uidotdev

    @uidotdev

    2 жыл бұрын

    RIP 🖤 (Thanks for watching!)

  • @drh237
    @drh2372 жыл бұрын

    It's still a bit unclear whether upgrading to React 18 is a good idea yet; especially if you are using Next (e.g. Suspense is discouraged for data fetching). Would be great to get your ideas on this Tyler? Thanks

  • @uidotdev

    @uidotdev

    2 жыл бұрын

    If you're using Next, I wouldn't worry about it.

  • @adityatripathi1904
    @adityatripathi19042 жыл бұрын

    One more reason why they did not go with the service workers is the expensive context switch to perform the task. In case of state calculations it becomes even more evident and obvious to not use workers.

  • @ToreyLittlefield
    @ToreyLittlefield2 жыл бұрын

    Beautiful video i love it 💕

  • @uidotdev

    @uidotdev

    2 жыл бұрын

    Thank you!

  • @mukulr5171
    @mukulr51712 жыл бұрын

    What a great video 🤍🤍

  • @bephrem
    @bephrem2 жыл бұрын

    Great video

  • @uidotdev

    @uidotdev

    2 жыл бұрын

    Thank you!

  • @vitinhuffc
    @vitinhuffc2 жыл бұрын

    Great presentation

  • @uidotdev

    @uidotdev

    2 жыл бұрын

    Thank you!

  • @MobiusCoin
    @MobiusCoin2 жыл бұрын

    useId seems useful, I've been passing down uuid to generate unique ids for form input for a while now.

  • @uidotdev

    @uidotdev

    2 жыл бұрын

    Yeah. Esp nice since the id is stable across the server and client too.

  • @netssrmrz
    @netssrmrz2 жыл бұрын

    Another excellent video on how ill-conceived react is. A never-ending trail of fixes disguised as features.

  • @uidotdev

    @uidotdev

    2 жыл бұрын

    Thanks for watching! 😂

  • @ericlee6029
    @ericlee60292 жыл бұрын

    Great video! What do you use to edit?

  • @uidotdev

    @uidotdev

    2 жыл бұрын

    Thanks! Screenflow.

  • @modestas2890
    @modestas28902 жыл бұрын

    brilliant

  • @uidotdev

    @uidotdev

    2 жыл бұрын

    Thank you!

  • @JaekSean
    @JaekSean2 жыл бұрын

    That's one one giant small step for leap for mankind. man,

  • @uidotdev

    @uidotdev

    2 жыл бұрын

    😅

  • @rallisf1
    @rallisf12 жыл бұрын

    3 years ago I decided to do more front-end work and learned react, hooks where the way to go. Went on a couple interviews and they cut me dry because their codebase was still in older react versions and I couldn't use hooks. I learned from an old colleague same shit went on with Vue. Frameworks where chaning too fast for the corporate world to adopt and new releases were considered unstable bacause custom components getting incompatible... I got so frustrated I devoted to Svelte, new kid in the block but simple AF. Long story short my components from 2019 still work on latest svelte and I can inject them in any webpage, no matter what framework it uses. Best choise I've ever made.

  • @dhkatz_

    @dhkatz_

    2 жыл бұрын

    I mean most older React components will still work too. They might throw some warnings now but there is nothing wrong with progress

  • @basil127
    @basil127 Жыл бұрын

    I got more knowledge about react in one video than my first year of using react..

  • @Mitsunee_
    @Mitsunee_2 жыл бұрын

    I'm still really confused on Suspense. How do I tell react that a component in Suspense's children is not ready yet?

  • @caliwolf7150
    @caliwolf71502 жыл бұрын

    We is this so high quality dammit!? we don't deserve this kind of good quality lol

  • @uidotdev

    @uidotdev

    2 жыл бұрын

    You do deserve it! ❤️

  • @userrrfriendly1908
    @userrrfriendly19082 жыл бұрын

    Great video, didn't understand a thing, but great video nonetheless.

  • @uidotdev

    @uidotdev

    2 жыл бұрын

    Hahaha I appreciate you watching and commenting regardless! ❤️

  • @DK-ox7ze
    @DK-ox7ze2 жыл бұрын

    In the input and list example you gave, how's using the new concurrent mode different from debouncing the rendering of the list on input change, as far as visual rendering performance is concerned?

  • @uidotdev

    @uidotdev

    2 жыл бұрын

    Great question. With a debounced input, you would have to wait for the debounce to timeout before the list work even begins. With useDeferredValue, the input state updates immediately AND the list work begins as soon as the input state changes. With a 500ms debounce timeout, useDeferredValue improves the speed by 500ms minimum.

  • @DK-ox7ze

    @DK-ox7ze

    2 жыл бұрын

    @@uidotdev In that case, how is React able to stop rendering of the current list in between when a new state change happens in input? If all this is happening on the main thread, then it's not possible to stop rendering of the list in middle, as js code runs synchronously in the browser, and the input change can only be processed in the next tick of the event loop.

  • @uidotdev

    @uidotdev

    2 жыл бұрын

    That's what the Fiber reconciler in React 16 provided - a way to pause low-priority work when something with a higher priority comes in. Part of it is also the `requestIdleCallback` feature in modern browsers. This video goes into much greater depth about how Fiber works, and how it paved the way for concurrent rendering. kzread.info/dash/bejne/jHepu7Kihay1ftY.html

  • @beto5720
    @beto57202 жыл бұрын

    Man I wish my boy Harambe was here to witness this updatw

  • @uidotdev

    @uidotdev

    2 жыл бұрын

    🖤

  • @flyte9844
    @flyte98442 жыл бұрын

    great content 👏👏 keep it up !!

  • @uidotdev

    @uidotdev

    2 жыл бұрын

    Thank you! ❤️

  • @ELStalky
    @ELStalky2 жыл бұрын

    "this is not a performance problem, this is fundamentally a scheduling problem" Keep telling yourself that 😅

  • @uidotdev

    @uidotdev

    2 жыл бұрын

    😅

  • @willinton06

    @willinton06

    2 жыл бұрын

    Let them believe it

  • @huxnwebdev
    @huxnwebdev2 жыл бұрын

    The next course will be on react query I guess?? 👀

  • @uidotdev

    @uidotdev

    2 жыл бұрын

    ui.dev/react-query 😘

  • @parmeetsingh2911
    @parmeetsingh29112 жыл бұрын

    Badia h

  • @butterfly7562
    @butterfly75622 жыл бұрын

    useDeferredValue is debounce an alternative? It's a little confusing as a beginner

  • @uidotdev

    @uidotdev

    2 жыл бұрын

    Yes. Think of it as a smarter denounce that is aware of what react is working on and when it's finished.

  • @davidnguyen9065
    @davidnguyen90652 жыл бұрын

    Will you be updating your courseware to React 18?

  • @uidotdev

    @uidotdev

    2 жыл бұрын

    Yes. And more.

  • @bobbyyyjames3065
    @bobbyyyjames30652 жыл бұрын

    So for now we kind of "opt in" to these Concurrent Features on case-by-case bases in the same manner we would identify a complex situation that calls for Memoization?

  • @uidotdev

    @uidotdev

    2 жыл бұрын

    Pretty much, yes.

  • @bobbyyyjames3065

    @bobbyyyjames3065

    2 жыл бұрын

    @@uidotdev thank you 🙏

  • @NachoDLF
    @NachoDLF2 жыл бұрын

    Hi. Can you do npm vs yarn? or something like that.

  • @renatosardinhalopes6073
    @renatosardinhalopes60732 жыл бұрын

    "We're in the endgame now"

  • @Linkplay9
    @Linkplay92 жыл бұрын

    Ooooor you could make rendering the list less expensive by building a faster VDOM or just not using one in the first place ;^)

  • @uidotdev

    @uidotdev

    2 жыл бұрын

    Svelte agrees

  • @amateurwizard
    @amateurwizard2 жыл бұрын

    Long live react

  • @uidotdev

    @uidotdev

    2 жыл бұрын

    Thanks for watching!

  • @ParthaSarathylink
    @ParthaSarathylink2 жыл бұрын

    When is the server side components coming . ..?

  • @RavMucha
    @RavMucha2 жыл бұрын

    Ah, Papyrus font in the outro. Trolling UI people, I see...

  • @uidotdev

    @uidotdev

    2 жыл бұрын

    My specialty.

  • @kennedyfreitas7548
    @kennedyfreitas75482 жыл бұрын

    He got my undivided attention when he said harambe was alive

  • @KeganVanSickle
    @KeganVanSickle2 жыл бұрын

    So React is finally catching up with what Angular has been able to do out of the box for years now? Am I missing something?

  • @uidotdev

    @uidotdev

    2 жыл бұрын

    Yes, you're missing a lot.

  • @KeganVanSickle

    @KeganVanSickle

    2 жыл бұрын

    @@uidotdev I figured. 😆

  • @cipherxen2

    @cipherxen2

    2 жыл бұрын

    @@uidotdev can you please explain?

  • @usernameL1
    @usernameL12 жыл бұрын

    Sorry, but I don’t get it. I’ve never come across an instance where I would need this (I think). Do you maybe have some real world example of where this would be absolutely necessary?

  • @uidotdev

    @uidotdev

    2 жыл бұрын

    They are rare, tbh. Essentially when you have rendering perf issues.

  • @tacticalassaultanteater9678
    @tacticalassaultanteater96782 жыл бұрын

    I really like the new API, it feels like a natural addition to React. Now the next logical step is to separate Fiber from React and have it provide scheduling primitives which both React, the application and other libraries can use. Unfortunately, this will never happen because React is a corporate project and as such has no motivation whatsoever to segment its scope into small self-contained projects, so Fiber will remain a feature of React, an advantage over the competition rather than a contribution to open source.

  • @uidotdev

    @uidotdev

    2 жыл бұрын

    I know at one point the react team was working on scheduling primitives with the chrome team. Not sure if anything ever came of that.

  • @duckmasterflex
    @duckmasterflex2 жыл бұрын

    Harambe was alive haha oh starting it off with a heart breaker

  • @uidotdev

    @uidotdev

    2 жыл бұрын

    🖤

  • @seannewell397
    @seannewell3972 жыл бұрын

    It is and always will be too soon 🖤🦍

  • @uidotdev

    @uidotdev

    2 жыл бұрын

    🖤

  • @jason-yb9qk
    @jason-yb9qk2 жыл бұрын

    as a person who just started learning react i have no idea what this video is about :")

  • @uidotdev

    @uidotdev

    2 жыл бұрын

    You'll get there!

  • @EinarPaulQvale

    @EinarPaulQvale

    2 жыл бұрын

    And you probably don't really need to know. One thing that is under-communicated in React discourse these days is that all these new primitives and performance optimizations are not necessarily needed. A small and relatively simple React app will still most likely perform acceptably. React is still the same at its core as it ever was, with most importantly a very good component model. And its very close to plain js, which is also a good benefit. If you truly need more power, then React now offers primitives to achieve this. But you don't *have* to use any of them.

  • @arpanghoshal2579
    @arpanghoshal25792 жыл бұрын

    Why can't I just use something like debounce or throttle in that example instead of using useDeferredValue ?

  • @uidotdev

    @uidotdev

    2 жыл бұрын

    Those aren't aware of what React is working on. UDV is like an intelligent debounce that is aware of React's current workload.

  • @arpanghoshal2579

    @arpanghoshal2579

    2 жыл бұрын

    @@uidotdev makes sense thanks

  • @hamidbluri3135
    @hamidbluri31352 жыл бұрын

    how do you make animations like this?

  • @uidotdev

    @uidotdev

    2 жыл бұрын

    It's a combination of a bunch of stuff.

  • @oscarmejia8306
    @oscarmejia83062 жыл бұрын

    I love u

  • @uidotdev

    @uidotdev

    2 жыл бұрын

    I love you!

  • @riddixdan5572
    @riddixdan55722 жыл бұрын

    now that concurent is here. what's next in line?

  • @uidotdev

    @uidotdev

    2 жыл бұрын

    Data fetching with Suspense seems to be the next big thing.

  • @DAB009

    @DAB009

    2 жыл бұрын

    @@uidotdev does Nuxt 3 js has something similar? Sorry I am still learning things.