I have been a part of quite a few tech stack decisions at various companies and startups. I have literally never heard an argument made for react that included merits of the framework itself. The decision was always based on a combination for familiarity, ability to hire for eng roles, and the ecosystem.
> I have literally never heard an argument made for react that included merits of the framework itself.
That doesn't mean that those merits don't exist. Most of the new React competitors are just reinventions of HTML templating done client-side. React has been dominant for so long that there's a whole generation of frontend devs who don't remember why it was invented in the first place. Writing loops in HTML? We tried that, it sucks!
It's telling that the "new" frameworks have no ideas other than to revert to ideas that were tried in the past. React is so modern it makes its replacements feel dated.
> I have been a part of quite a few tech stack decisions at various companies and startups. I have literally never heard an argument made for react that included merits of the framework itself. The decision was always based on a combination for familiarity, ability to hire for eng roles, and the ecosystem.
Couple of thoughts regarding this:
* A competing alternative would have to have really big benefits from a technical standpoint to outweigh the React advantages that you mentioned.
* When exploring alternatives IMO the burden of proving that something is better lies within the person/people that want to go with an alternative option. React is the de facto standard these days so it shouldn't be a matter of "why React" but "why not React".
If that is the point, then I feel it is made out of technical mediocrity, rather than excellence. A good team should be able to adapt the technology that best fits the task, and companies should be able to hire for it. Or stay mediocre otherwise.
The hiring issue is home made. If companies started hiring for engineering skills, rather than familiarity with existing tech stack, it would change quickly. Experienced engineers are able to learn new languages and frameworks on the job. Of course, if hiring is too petty to give engineers a month of getting familiar with the product and expect readiness from the get go, then they will continue to miss out on talent.
Im not sure how this is a negative merit for React.
Besides if you are a small company, or a start up, your job is to get things done. Not to embark on a global technology crusade to push your favourite tech.
By and large the best thing about react is the overall ecosystem, libraries, talent and ubiquitousness. And thats a good thing.
It isn't necessarily a bad thing, but it doesn't align with the idea of how good react is or the technical merits of it.
I also am not saying teams I have been on that picked react made the wrong choice. That's all in context and as you said startups are often in the "get things done" mentality where tech debt won't matter if you can't survive long enough for it to matter.
It’s good enough that the ecosystem outweighs the superiority of something like SolidJS.
React has React Native as part of its ecosystem. That’s a massive advantage. react-strict-dom is going to be a game changer for the development of universal apps.
We're talking about two different topics here. I agree, the ecosystem around react is huge and there are reasons a team would pick react. Ecosystem isn't an indicator of the technical merits of react itself though, and that's what I was originally responding to here.
Yes, that's precisely my point. The technical merits are substantial relative to the previous generation of UI libraries like jQuery. If a team were seriously deciding between React and jQuery today, I hope someone would bring up React's technical merits.
But these substantial technical merits are also largely shared by the other modern React competitors, and the differences between these modern options are small enough that they won't outweigh the social benefits of React (except in narrow use cases).