4 ms·
React made a lot of sense to escape Angular, Ember, Backbone and jQuery in 2013-2014, but then it took 4-5 years to become wildly popular [1]. I've never unders
by pier25 6y ago
React made a lot of sense to escape Angular, Ember, Backbone and jQuery in 2013-2014, but then it took 4-5 years to become wildly popular [1]. I've never understood its popularity despite the fact that during those years there were already better options out there by any metric you can think of (except popularity and hype).
- Inferno and Preact: similar API but so much faster and smaller.
- Mithril: vdom based with components, faster than React and includes http client + router in 10kB gzipped.
- Vue: faster and smaller and has official batteries (unlike react-router which is a third party)
Etc.
[1] https://npm-stat.com/charts.html?package=react&from=2013-05-30&to=2020-05-30 https://npm-stat.com/charts.html?package=react&from=2013-05-...
- cutler 6y agoOne-way data binding is what made React successful. Angular took a long time playing catch-up and with Vue it was optional.
- srg0 6y agoProbably because none of those advantages of other solutions matter for small-to-medium scale business. It's about getting things done _fast_, not getting the fastest thing. And for that purpose, a popular tool is usually better (more people, more information, bigger ecosystem). As for the technical merits of the alternatives, they fail to manifest in most situations: "Faster" - any framework is fast enough for most of the common tasks; and even if a popular framework is not the fastest, it is not necessarily a bottleneck in the real life applications. "Smaller" - it is just "faster" download. Irrelevant in many usage scenarios. It might be important in some applications, but shaving milliseconds vs man-months is a tough sale. "Official batteries" - bundling of the dependencies is completely irrelevant from the business perspective. It's something that the developers are paid to figure out.
- pier25 6y ago> but shaving milliseconds vs man-months is a tough sale It's not really one or the other. Both Preact and Inferno can be used with React libraries with a compat layer. > bundling of the dependencies is completely irrelevant from the business perspective. It's not irrelevant. Vue is used by major corps in China. > It's something that the developers are paid to figure out. Didn't you just argue that the advantage of React is that developers get "things done _fast_"? How come this is not an advantage in the case of Vue?
- srg0 6y ago> Vue is used by major corps in China It might be the case that in China Vue is the default and the most popular choice. And still my point holds: Vue is not the fastest, and is not the smallest framework. Technical merits alone ("faster", "smaller") are not enough to drive adoption. On bundling/unbundling. I think it's a preference thing. "Batteries included" vs "modular" are both viable designs.
- pier25 6y agoSince you're claiming the answer is not technical, why would Vue be more popular in China than React and why isn't Vue more popular in the Western world? > I think it's a preference thing. "Batteries included" vs "modular" are both viable designs. Again, it's not one or the other. Vue in itself is just a simple rendering engine much like React, Inferno, etc. There are official libraries (router, state, etc) but those are separate projects which you can choose to use or not. It's not a framework like Angular, Ember, etc.