News for hackers. Stuff that matters.
Re:Svelte 5 is not JavaScript by maeil on Tuesday February 18, 2025 @12:56PM (#43092903)
> My personal problem with JavaScript is that things keep changing too much.

JavaScript itself barely changes - it's the flavor-of-the-month frontend frameworks that do. What language feature is commonly used now that wasn't 5 years ago? Some nicer builtin Array methods I guess?

There's a lot of dislike on here for Typescript as a backend language. But the difference with the frontend world with its dozen everchanging frameworks is striking. On the backend side, most projects don't even use a framework, and for those that do basically all of them use the same one (NestJS). And the rate of breaking changes on that has been much lower than something like React.

Of course, many will say that this lack of industry-wide adopted framework in itself is what they dislike about it. But it's hard to settle on that golden mean inbetween both extremes when it's the most popular language in the world (in terms of "Yearly new LOC going into production"). Python makes for a good contrast, with a dozen popularish backend frameworks. Not sure if that's really a better situation to be in, there's pros and cons.

Re:Svelte 5 is not JavaScript by 91bananas on Tuesday February 18, 2025 @01:51PM (#43093565)
And to expand on this further, I think the real driver of the "javascript always changes" is React. Depending on when your React project was built, it can be incompatible in so many different ways with a React project from a different vintage. Sure, a lot of other frameworks and tools that pop up here and there, but none of them are ever widely adopted. When compared to Vue and Angular which I think we can all agree are the other two frameworks of note, React has been very unstable, Vue and Angular appear quite stable.

The javascript language itself hasn't really had a breaking change of note that I can remember in the last 15 years? It's just expanded its API from years and years of browser implementations trying stuff and trying to get to an actual standard. HTML5/ES6/CSS3 brought a new kind of baseline sanity to the whole thing. That's not to say it's a perfect language without quirks, but to say it keeps changing is just not even accurate at all.

python has version evolution, C++ has version evolution, they kinda all do...

Re:Svelte 5 is not JavaScript by tracerbulletx on Tuesday February 18, 2025 @01:55PM (#43093616)
A React class component from 10 years ago will still work in React today perfectly well, and is doing so in large codebases around the world.
Re:Svelte 5 is not JavaScript by eterm on Tuesday February 18, 2025 @03:51PM (#43094935)
> A React class component from 10 years ago will still work in React today perfectly well,

This isn't true.

ComponentWillMount and related methods were deprecated and then removed.

Yes, they allowed an escape hatch of UNSAFE_ComponentWillMount etc, but that still requires work to make it compatible, so it definitely doesn't "[work] perfectly well".

Re:Svelte 5 is not JavaScript by LegionMammal978 on Tuesday February 18, 2025 @02:00PM (#43093674)
Then again, React projects tend to use fast-moving things on top of React, like Redux or NextJS or CRA or whatever. Personally, I enjoy writing stuff in bare React since I like its model, but people tend to steer well clear of that, especially these days with compilers and bundlers and whatnot attached to the frameworks.
Re:Svelte 5 is not JavaScript by tracerbulletx on Tuesday February 18, 2025 @02:06PM (#43093743)
I agree, bundlers and bundler plugins have probably been the main thing people see with JS ecosystem and think is overly complicated.
Re:Svelte 5 is not JavaScript by rbower on Tuesday February 18, 2025 @02:29PM (#43093974)
Have you worked with Angular much? I've built extensive component libraries (internal) for my org and maintaining the Angular one has been a nightmare. The frequency of breaking changes and conventions has been awful, particularly in the last few years. React, by contrast, has been a breeze ever since they introduced Context and Hooks.

On the app development side, we dealt with 3 major overhauls of PrimeNG's style system before we decided to invest in a custom library just to eliminate the risk of future upgrades. It took us 6 months to migrate our Angular 9 app to 18 because of the PrimeNG dependency. Granted, it's a massive application and they didn't maintain it properly, but I'd hardly call Angular stable regardless.

And then you have the Vue composition API, which was a major shift from Vue 2.

This isn't to say that React has been perfect. Depending on your stack, there are certainly a fair degree of breaking changes (looking at you, Next.js and react router). But that is far from abnormal in the JS world.

Re:Svelte 5 is not JavaScript by filoeleven on Wednesday February 19, 2025 @01:33AM (#43099226)
> Vue and Angular appear quite stable.

I take it you didn’t have to deal with porting an AngularJS app to some other framework, like Angular 2.