Nice to see this confirmed again. Namely, look inside react if the UI you are building kinda looks like FB. Look outside React if it doesn’t. (Keep react as a view only)
I disagree with this translation.
"focus on scaling" doesn't anywhere mean "don't use it for anything but large"
it would only mean such a thing if React would be only good at what the team AT THIS TIME focusing at
this is obviously silly, since React was already a really great implementation of the vdom idea since the Fiber scheduler
what the tweet confirms for me is just that those who don't build large applications felt that React was stagnating and those features that were great a couple of years ago are now "the new normal"
what your judgement about not using React misses greatly is that there isn't any other tool that has so little compromises. Yes, there are millions of frameworks but where do you get so many good things at once? that said, if you are building something tiny, no one ever said that you need a virtual-dom.
And I am saying this with a background where I used a bunch of other things in the past before and while I used React: https://github.com/Raynos/mercury today I might even consired this https://tonic.technology/ I used Elm, and I even lead a huge project with dozens of people for prestigious client where frontend people used Angular. All in all, I believe React is extremely well polished compared to most other stuff, it has a small API surface that's intuitive for those who used html/css a lot and it gets out of the way most of the time. Is it perfect for your blog? Or some small project which will rarely change and every change might mean a full redesign or something overarching like that? Of course not. It is decidedly for doing the same thing over and over again easily. Now, they are completely lost on state management which was clear when first clojurescript started using React and in performance it was twice better than from javascript. Plus, there is the backend stuff, the native stuff and the GraphQL stuff they are pushing because these projects are all extremely useful in some cases, so again, I think it's unfair to reduce all this to "large". You can make a 3d game for mobile and package it with a custom renderer using React. Or you could make a completely static webserver. As long as you don't want to use their state management solutions : )
i believe that any such simplification will suffer from the same insufficiencies
@ashnur enjoyed your rant, and I think I agree
If react is only my view, I might use preact because it's faster and for 2kb I can use compat and access the ecosystem.
I’ve not tried it. Will you lose access to react component libraries?
I've not tried, just read docs. There's a preact/compat that will let you load most react component libraries.
Our codebase was based on preact (with reagent), but we gave up and went back to react after a thousand tiny cuts, mostly around tooling (including testing) and different corner case behaviours (that some libs/components were relying on, of course)
Talking about corner case behaviours and undocumented APIs 🙂