React makes it easier for more people to build complex systems; there was no problem doing it before though if you treated frontend in the same category as the backend; hard technical vs some kind of art.
I don't understand the argument that you have to rewrite your application everytime React introduces a new feature.
My current company is using a React app, built on top of Create-React-App, and still has some class components sprinkled throughout.
We simply have simply chosen not to rewrite everything each time a shiny new feature comes along. Instead we incrementally adopt the new things as they come along. Everything works fine. Those class components are in parts of the codebase that haven't needed to be updated in years...next time I need to make more than a trivial change to one of those components I'll take the extra 15 minutes to update them to use hooks.
We are looking to get off of CRA since Vite has a much quicker build time - but we've managed to make it ~8 years before deciding this upgrade was worth our time.
We have absolutely 0 plans of migrating to a framework so we can use server components.
Same experience here, React is actually very good about backwards compatibility, and for anything that is pervasive, codemods via jscodeshift works pretty well too.
I have had to make changes to the build system for the React system I maintain at work, but in no way would I consider it a "rewrite", as much as a "refactor" for a specific part of the codebase while leaving the rest relatively untouched.
In fact, JavaScript moving to ESM has broken MUCH more code than any of the React features listed in the article.
Absolutely agree. I work on a cra-based SPA at work which might have 100s of issues, but React for sure isn't one of them. Packages exporting made-up types are. JavaScript's goofy transition to ESM is. Babel might be. In a world where a new JS framework boasts about being the future of webdev every other day, React hasn't shipped a single update in 1+ years now, and has generally been super cautious to maintaining backwards compatibility and a super easy API. The only questionable move has been the unnecessary push to server components, but imho that's more of a political problem, since vercel has eaten up the react team and has this weird habit of trying to sell terrible architectural decisions to its users.
Same. I've spent a good part of the last seven years working on and around a large React app, and it's been fine in exactly the ways you describe. I've got my complaints and maybe I would spare half a thought to considering another library if I started a completely greenfield app, but over all I'm very happy with what React has given us – especially over what was around before.
oh my god when will js devs learn this cycle has been going on so much longer than 7 years? I mean it's almost funny if it wasn't so depressing that JavaScript is eating up all the web dev jobs.
Js is eating up? Js-uber-alles has largely been the way of things for half a decade! And the pendulum has already headed strong back & is gaining speed! That's what's changing, now: there's finally other options again!
The recent WASI 0.2.0 submission/discussion is about WASI, a chiefly server-side oriented system & so far server-side component model, but this component model is the cross-platform gateway that is opening up the (vastly larger now) webdev world to something that a long time ago the web was incredibly at: being a place for many different languages to come & try stuff out. And this time it'll be in a cross-language form! https://news.ycombinator.com/item?id=39143054
You're right it's been a direction for a long time. I hope some other languages & communities can find & expose worthy incredibly interesting offerings that lure us off the beaten path we are on. It'll be technically/mechanically much easier to do, starting now-ish, but whether there is distinct clear value to writing your core in other languages is so far very unclear. Will it make a difference? Will other ideas arise & prove valuable & steer us onwards? T.B.D.
There is this book "The Fourth Turning" that makes some very outrageous claims about cycles in American History. Perhaps the book is actually correct, just it turns out to be about the Javascript ecosystem
I get a feeling that JS is tainting everything. JSON is used everywhere, JS is used to build desktop apps, new languages are infected with JS-like features.
[+] [-] qgin|2 years ago|reply
I remember trying to make mildly complex dynamic websites before React. It wasn't good.
[+] [-] anonzzzies|2 years ago|reply
[+] [-] battery_glasses|2 years ago|reply
My current company is using a React app, built on top of Create-React-App, and still has some class components sprinkled throughout.
We simply have simply chosen not to rewrite everything each time a shiny new feature comes along. Instead we incrementally adopt the new things as they come along. Everything works fine. Those class components are in parts of the codebase that haven't needed to be updated in years...next time I need to make more than a trivial change to one of those components I'll take the extra 15 minutes to update them to use hooks.
We are looking to get off of CRA since Vite has a much quicker build time - but we've managed to make it ~8 years before deciding this upgrade was worth our time.
We have absolutely 0 plans of migrating to a framework so we can use server components.
The app makes lots and lots of money.
[+] [-] iptq|2 years ago|reply
I have had to make changes to the build system for the React system I maintain at work, but in no way would I consider it a "rewrite", as much as a "refactor" for a specific part of the codebase while leaving the rest relatively untouched.
In fact, JavaScript moving to ESM has broken MUCH more code than any of the React features listed in the article.
[+] [-] 0xCAP|2 years ago|reply
[+] [-] dwb|2 years ago|reply
[+] [-] Freedom2|2 years ago|reply
[+] [-] LesZedCB|2 years ago|reply
[+] [-] jauntywundrkind|2 years ago|reply
The recent WASI 0.2.0 submission/discussion is about WASI, a chiefly server-side oriented system & so far server-side component model, but this component model is the cross-platform gateway that is opening up the (vastly larger now) webdev world to something that a long time ago the web was incredibly at: being a place for many different languages to come & try stuff out. And this time it'll be in a cross-language form! https://news.ycombinator.com/item?id=39143054
You're right it's been a direction for a long time. I hope some other languages & communities can find & expose worthy incredibly interesting offerings that lure us off the beaten path we are on. It'll be technically/mechanically much easier to do, starting now-ish, but whether there is distinct clear value to writing your core in other languages is so far very unclear. Will it make a difference? Will other ideas arise & prove valuable & steer us onwards? T.B.D.
[+] [-] sidewndr46|2 years ago|reply
[+] [-] 2OEH8eoCRo0|2 years ago|reply
[+] [-] lylejantzi3rd|2 years ago|reply
[+] [-] booi|2 years ago|reply
[+] [-] unknown|2 years ago|reply
[deleted]