5 ms·
as a Rails dev this makes me LOL. I would have expected the rube goldburg machine of JS frameworks to be more robust and ergonomic by now, but it looks more to
by usernamed7 1y ago
as a Rails dev this makes me LOL. I would have expected the rube goldburg machine of JS frameworks to be more robust and ergonomic by now, but it looks more to be hacks built on top of hacks with no real vision or technical leadership.
- b_e_n_t_o_n 1y agoLike said in the article, most other JS frameworks are actually pretty good these days.
- zwnow 1y agoI work with Vue 2 and Vue 3, both options and composition APIs and both are pretty great. I dont know how it's like for very complex UI but it 100% fulfills my needs. Also shout out to Pinia, I love you!
- sensanaty 1y agoI have a monstrosity of a Vue 3 project at work and I far prefer it to any "elegant" React codebase I've ever had the displeasure of working with. Boggles the mind that React still has any mindshare to me, Vue and Svelte are both superior to it in pretty much every way except for availability of component libraries (which isn't so relevant in my line of work), and a slight edge in terms of TypeScript support (mostly a problem with Vue's props).
- zwnow 1y agoYea I would agree. I do not use component libraries ever as I prefer building my own. But I also know that stuff like shadcn also has Vue variants.
- sfn42 1y agoI think React is fine, the problem is that every single react app I've inherited is ass - people just do everything incorrectly and overcomplicate simple things. Components with like 5 different useEffects, huge global state causing all kinds of bugs, way too much frontend logic in general. The amount of JS code that exists just to mimic things you can do with HTML and CSS is staggering. Everyone complains that react is so slow and horrible, it isn't. It's their code that's slow and horrible, react is snappy as hell when you use it properly.
- zwnow 1y ago> Everyone complains that react is so slow and horrible, it isn't. It's their code that's slow and horrible, react is snappy as hell when you use it properly. Why use something that you have to use "properly" when there are things out there that enforce being used properly?
- sfn42 1y agoBecause I'm not convinced there exists a programming language/library/framework that you can't use improperly. And just to be clear I'm not saying react is better than Vue. I don't know Vue. Maybe it is better. All I'm saying is react is alright in my experience, the problem is people overcomplicate and mess things up. I've seen that in pretty much every piece of software I've ever worked on, backend/frontend/whatever. So the claim that Vue just magically can't be messed up is difficult for me to believe.
- zwnow 1y agoI can understand that. For me personally, Vue has a limited set of lifecycle hooks you can use so its hard to pick the wrong one. React on the other hand gives u some kind of use_ for everything, so its first and foremost harder to understand the app lifecycle and to pick the correct hook. With Vue I started to use Pinia for my whole apps state management, which are data stores. Clean and centralized logic, with React idk what a substitute would be. I know React can be clean too, but that (in my opinion) requires a lot more depth of knowledge about the framework.
- sensanaty 1y ago> It's their code that's slow and horrible, react is snappy as hell when you use it properly. That's the problem though, it's hilariously easy to shoot yourself in the foot with React. If almost every project makes the same common mistakes, it ceases being an issue with the people using it, it's a broader problem. With Vue or Svelte you'd have to try damned hard and go out of your way to mess up in similar ways, because the idiomatic way of writing Vue, especially with Options API, is so simple and straightforward. How many articles do we have out there begging people to please stop using `useEffect`, for example? Plus, React's reactivity model is terrible and a source of a lot of performance pitfalls. Vue's and Svelte's Proxy/Signals-based approach is much more performant out the gate, and in the case of Vue the diff reconciliation algorithm is a lot better than React's, which itself will already prevent a bunch of useless re-renders compared to 'standard' React apps.
- porridgeraisin 1y agoYeah, vue is really easy to work with, conceptually simpler and has so many more niceties.
- thiago_fm 1y agoYet 95% of fresh companies raising funds use that cursed NextJS framework.
- cpursley 1y agoThis feels a whole lot like when everybody with VC cash was using Mongo. And I see that as a competitive advantage if your competitor is using these types of technologies, it means you can out maneuver them and build a better product.
- Tade0 1y agoRoR wasn't picked up by e-commerce at this scale. Most of the craziness comes from attempting to squeeze out every last inch of performance so that the prospective client won't go "neeeih" and shop somewhere else. A RoR app will just sit comfortably wherever you deploy it, slowly doing its job like a good, reliable tractor. A typical Next.js app is smeared all across its origin, some geographically convenient Edge and the frontend. It's a very different use case.
- usernamed7 1y agowhat do you mean? Shopify is the largest eCommerce platform and runs rails.
- fredrikholm 1y agoI think they mean that Shopify doesn't decide what happens or doesn't happen to Rails; Vercel decides what happens or doesn't happen to NextJS.
- hit8run 1y agoTobi is Ex-Rails Core contributor and Shopify is significantly contributing to Rails and Ruby.