Live data from Hacker News

React is winning by default and slowing innovation

lorenstew.art

471–480 of 866 posts

Re: React is winning by default and slowing innovation

#471

React isn't winning by default. It's been so effective, so well designed that it's lived long enough to become the defacto standard... and the villian. Claiming React is slowing innovation is an absolutely bonkers take when React is essentially the only sane stable choice in a sea of "me too" frameworks and libraries with conflicting and confusing design choices.

Have you actually used Vue or any of the other options in a full application? Because what you are saying doesn’t match my experience.

[deleted]

Re: React is winning by default and slowing innovation

#472
React isn’t just "winning by default" It's winning because at the core it's just JavaScript function composition. A component is a function, conditionals are `if (...) { ... } else { ... }`, loops are `map()`. JSX is just sugar for function calls.

In Svelte you are writing XML with little JavaScript islands inside it. Instead of if you get `{#if}{:else}{/if}`. Thats not "ergonomic" – thats a mini-language stapled on top of JS. No one wakes up saying "please let me write control flow in XML today"

The compiler tricks are neat, but React feels natural because it never asks you to stop writing JavaScript.

Re: React is winning by default and slowing innovation

#473

I would say react being the default expands to apps that normally would work perfectly server-side rendered. The insane amount of added boiler plate associated with writing an API, tests for the API (including contract tests), API documentation, API versioning concerns, deployment timing considerations; front-end API integration, front-end state management, front-end tests, API mocks, I feel like there's about 10 mor…

Even for dashboards or other cases where the React maximalists claim that application state is too complex, it is usually trivial to inline a bit of JSON representing the initial state and handle updates with Vanilla JS. For me, I appreciate that my pages can render with one single request. There's something deeply wrong when you have the entire browser API at your fingertips, yet include 10mb of dependencies. The browser is already a heavy piece of tech, yet the typical JS heavy page is larger than the equivalent static binary of a native application.

Re: React is winning by default and slowing innovation

#474

Earlier quoted context omitted.

Strong disagree. Web Components are react in different clothing. You don’t need this component-based framework style architecture to write applications for the browser. I promise writing applications for the browsers is not challenging. You don’t need big frameworks or component madness that’s more of the same.

> I promise writing applications for the browsers is not challenging. Yeah it is. I don’t like React but I’ve been doing this since the days of MooTools all the way through Backbone to the libraries we have today. Once your app reaches a certain size and/or reaches a critical mass of contributors it does get challenging and modern frameworks reduce that challenge. That can be taken way too far. Almost every time I’ve…

Modern frameworks, really components and an API, solve only two business problems: division of labor and training. Knowing that you can address these problems with continuous integration around a common set of rules and requirements.

With regard to application size we fortunately now have TypeScript. All you really need to scale any application is types, functions, and code reuse.

Re: React is winning by default and slowing innovation

#475

What keeps me and a lot of people/companies on React is React Native (and React Native web / strict dom). I'm sure we could move over to Svelt or Vue or any other number of frameworks on the web, however having a shared codebase and/or shared components across native and web is a game changer and not currently possible with anything but React.

100% agree.

Our react/react-native monorepo has been a pleasure to work with and has massively reduced the overhead for development with a limited number of staff.

Re: React is winning by default and slowing innovation

#476

Earlier quoted context omitted.

> there are strong technical forces that want the browser to finally finish morphing from a document viewer to an application runtime I really hope that never happens if only because the web dev on ramp will discourage anyone without preexisting technical chops.

> because the web dev on ramp will discourage anyone without preexisting technical chops. This is a good thing! It keeps salaries high and keeps the dilettantes out. I am sick of getting my work devalued by morons There are too many people trying to build "tech" who shouldn't be. We need more gatekeepers

We need lower barriers so users aren’t beholden to a handful of walled gardens. When big tech can’t collude, salaries might in fact go up.

Re: React is winning by default and slowing innovation

#477

React isn't winning by default. It's been so effective, so well designed that it's lived long enough to become the defacto standard... and the villian. Claiming React is slowing innovation is an absolutely bonkers take when React is essentially the only sane stable choice in a sea of "me too" frameworks and libraries with conflicting and confusing design choices.

In what way React is anywhere near well designed? Look over quick starts of React and Angular, for example. One is a well structured application , the other is a spaghetti script , all held by magic and conventions. If you recall the (in)famous "PHP: a fractal of bad design", React basically ticks every box in this rant and then some. It's not surprise knowing it's origins, but still. The reasons React has got tracti…

After working with both, React is massively more readable and easier to work with.

Re: React is winning by default and slowing innovation

#478
Suggestions for future blog articles:

"Keyboards and mice are winning by default and slowing innovation"

"Web is winning by default and slowing innovation"

"Linux servers are winning by default and slowing innovation"

They basically write themselves! Don't forget to mention touch screens and track pads in the first one. Have fun, you are welcome.

Re: React is winning by default and slowing innovation

#479
post #428

> Hooks addressed class component pain but introduced new kinds of complexity: dependency arrays, stale closures, and misused effects. Even React’s own docs emphasize restraint: “You Might Not Need an Effect”. Server Components improve time-to-first-byte, but add architectural complexity and new failure modes. There are a lot of valid criticisms of React, but I don't think this is one of them. These problems are not…

Disagree. Hooks took one problem and reshaped it, they didn’t actually solve the problem. With hooks you still need to think about lifecycle, side effects, and state, but the syntax changes. The real solution is overall application design and thinking through architecture, but unfortunately that’s higher effort than “just use hooks bro”.

Agreed. Thinking about lifecycle, side effects and state doesn’t just go away. It’s inherent to the system you are building. Hooks is a way to address that, class lifecycle methods are another. None of these tools will magically let you ignore proper design.

Re: React is winning by default and slowing innovation

#480

React isn't winning by default. It's been so effective, so well designed that it's lived long enough to become the defacto standard... and the villian. Claiming React is slowing innovation is an absolutely bonkers take when React is essentially the only sane stable choice in a sea of "me too" frameworks and libraries with conflicting and confusing design choices.

Angular is quite stable as well
Post reply on HN