> I’ve noticed a troubling tendency in the JavaScript world recently, particularly in the React community. That tendency is for people to suddenly “discover” that decades of best practices somehow don’t apply to them anymore.
lol, this is just a problem with developers in general. Between burnout and hiring bias they trend young. Information and best practices struggle to get passed down across short generational overlaps.
The number of times I have seen the same bad ideas resurface over and over in my twenty year career is just insane. Document stores were the rage, then they were bad, then they were great again, and I think we’re cooling down on them again.
I have echoed similar concerns here before. I do think this problem is more pronounced in the web community than elsewhere. There is an unhealthy attraction towards new paradigms and tools. You need a certain amount of skepticism and cynicism to ensure bad ideas are resisted, but this community with its all embracing, unconditional positivity keeps shooting itself in the foot constantly resulting in an unstable ecosystem. The most important thing the community needs to adopt, in my opinion, is a sacrosanct approach to backwards compatibility. In the words of a very wise man, "WE DO NOT BREAK USERSPACE!"
As an example, I find the idea of deno really ludicruous. As if the ecosystem wasn't chaotic enough, now there is a new runtime, and of course it is not compatible with the current standard. While it's a pretty cool and inventive piece of work in itself, the idea of having to rewrite all of userland should frighten the community. People should challenge its need and value and push the community to find alternatives. People should respect the time and effort it takes to reach maturity. But now we now have a rewrite of node dotenv in deno dotenv, oak middleware inspired by koa, a new semver package, a new base64 package, yet another modern web framework... and what not. I predict, we will witness a race within the community to be the first to rewrite popular packages, node packages will slowly get abandoned, companies will open positions for deno developers, there will be a deno conf and new developers will be asking whether they should take the node course or the deno course.
Deno did pick a standard: the standard of the browser. Deno more directly aligns with the web browsers versus Node "standards" that were designed almost intentionally to be incompatible with web browsers. Most of those libraries you point out are all getting rewritten for ESM (a seven year old standard from 2015, mind you) and better browser compatibility anyway as Node itself finally slowly aligns with web standards. Just because they aren't all "necessary" rewrites doesn't make that all of them are "not useful".
The good news is that in this case the "competition" seems healthy: Deno's efforts have spurred Node forward to better embracing standards they've notoriously avoided before (or at least have been slow to adapt to). Deno's efforts have helped make Node more solid in its ESM support, as a big for instance. There's still an optimism that Deno and Node will again converge sometime down the future.
A thousand times this. People were so grossed out by Deno resolving imports from URLs... but browsers have allowed this forever, Deno was just aligning to how the web already works.
But React hasn't broken userspace, at least not in regards to hooks and class components. It is still possible to develop a React app today, from scratch, using only class components. Similarly, just because Deno exists does not mean that Node has stopped existing, or even being developed. As far as I can tell, "userspace" is as safe as ever.
Fwiw, I'm very glad that Linus himself hasn't taken your attitude to new technology, and is quite happy exploring experimental ideas, such as the new Rust-in-Linux work that's going on right now.
lol, this is just a problem with developers in general. Between burnout and hiring bias they trend young. Information and best practices struggle to get passed down across short generational overlaps.
The number of times I have seen the same bad ideas resurface over and over in my twenty year career is just insane. Document stores were the rage, then they were bad, then they were great again, and I think we’re cooling down on them again.