News for hackers. Stuff that matters.
Re:The tragedy of running an old Node project by sgt on Monday November 18, 2024 @01:28PM (#42175354)
I've actually had a node project go bad in a mere 4 months. It must be a new record. That was about 4-5 years ago though.

Hopefully the ecosystem as improved since then, but it was nearly impossible to get going.

Some packages had been changed and the version number overwritten with incompatible packages, and the conflicts were plenty.

Re:The tragedy of running an old Node project by jerf on Monday November 18, 2024 @01:48PM (#42175556)
One of the things I'm intrigued by is that JS people, and the other couple of ecosystems where this is a big problem, go out to learn another language (as a good T-shaped developer does), and then start posting frantic questions to the new language's communities about how this popular library hasn't had a commit in six weeks, is it dead, oh my gosh wtf aaaaaaaaaaa.

It's OK. Not every language ecosystem is so busted that you can reliably expect a project not to work if someone isn't staring at it weekly and building it over and over again just in case. Now, it's always a risk, sure, no language anywhere is immune to the issue [1], but there's plenty of languages where you can encounter things from 5 years ago and your default presumption is that it's probably still working as well now as it did then. It may be wrong, but it's an OK default presumption.

[1]: Well... no language in common use anyhow. There's some really fringe stuff that uses what is basically content-based references for code dependencies, but I'm not aware of anything that I'd call "production quality" that even remotely looks like that, and is immune to someone just plain making an error with the semantic versioning or whatever.

Re:The tragedy of running an old Node project by toast0 on Monday November 18, 2024 @01:55PM (#42175633)
> frantic questions to the new language's communities about how this popular library hasn't had a commit in six weeks

Lol, my perspective is almost the opposite. If it's got a lot of commits in the last six weeks, I need to look for something that's stable. Unless there's a good reason for so many commits; I feel like that many commits means it's in active development, which implies the requirements and interfaces aren't yet determined and who wants to rely on that?

Re:The tragedy of running an old Node project by rootnod3 on Monday November 18, 2024 @01:53PM (#42175615)
These JS developers would probably shiver at seeing many Common Lisp repos with a last commit like 12 years ago and still working like a charm.
Re:The tragedy of running an old Node project by abdisalan on Monday November 18, 2024 @01:58PM (#42175679)
I’m curious, how do you measure the pulse of a project that old? Do people still talk about it? Or that not even necessary — use it until it breaks and otherwise don’t think about it?
Re:The tragedy of running an old Node project by swatcoder on Monday November 18, 2024 @02:32PM (#42176012)
Why do you want your building materials to have a pulse?

Ideally, in adopting dependencies, you should be looking for a mature utility whose design was clear and implementation is complete.

If it's open source, you should be able to read and unserstand the code yourself, and you should make an earnest effort to do so, in case it has faults you wouldn't usually allow in your own code and in case you need to fork it at some point.

This lets you you build well-designed, stable, maintainable, clear things yourself.

The alternate, building your project on a random collection of "living" projects undergoing active development is how you banish yourself to perpetual maintenance, build failures and CVE warnings that have nothing to do with your work, surprise regressions when you update your referenced version (you are, at least, pinning your versions??), etc

Re:The tragedy of running an old Node project by Macha on Monday November 18, 2024 @03:22PM (#42176500)
Something like a HTTP 1.1 client is something you might expect would be a pretty stable thing that doesn't need too many updates, right?

But I would not assume that a HTTP client that has been untouched in 12 years supports SNI, for example, which means that actually it might be totally useless for a lot of modern sites (certainly Android did not support SNI 12 years ago).

Re:The tragedy of running an old Node project by popcalc on Tuesday November 19, 2024 @09:43AM (#42183951)
You're going to put it behind nginx anyways, right? So why does it even matter?
Re:The tragedy of running an old Node project by Macha on Tuesday November 19, 2024 @09:47AM (#42183988)
Client, not server.
Re:The tragedy of running an old Node project by toast0 on Monday November 18, 2024 @02:08PM (#42175769)
If it has an issue tracker, you can look in there for things that look like real issues and are unaddressed.

If there's no issue tracker, you can YOLO and try it and see if it works, or you can look around at the code and see if it looks reasonable.

Even if there are unaddressed issues, you can always use it and fix it when it breaks. If it's reasonable enough, it's a good start anyway. And at least my assumption with open source is I'm going to be fixing it when it breaks, so lack of a pulse is better than churn.

Re:The tragedy of running an old Node project by cousin_it on Monday November 18, 2024 @05:20PM (#42177737)
Maybe "pulse" could be transitive? Like, if a project doesn't have many recent commits, but many projects using it have recent commits.
Re:The tragedy of running an old Node project by kaptainscarlet on Monday November 18, 2024 @01:57PM (#42175670)
Node is bad but the worst I have seen is Android
Re:The tragedy of running an old Node project by telgareith on Monday November 18, 2024 @02:00PM (#42175700)
How about node on android?
Re:The tragedy of running an old Node project by lpapez on Monday November 18, 2024 @02:16PM (#42175849)
Delete this comment right now, don't give them ideas.
Re:The tragedy of running an old Node project by ian-g on Monday November 18, 2024 @02:36PM (#42176061)
Too late, we already have react native
Re:The tragedy of running an old Node project by kaptainscarlet on Tuesday November 19, 2024 @12:35AM (#42180346)
It's a double whammy
Re:The tragedy of running an old Node project by plaidphantom on Wednesday November 20, 2024 @06:42PM (#42199355)
And Nativescript.
Re:The tragedy of running an old Node project by kamma4434 on Monday November 18, 2024 @02:54PM (#42176233)
I would expect most Java projects from 20 years ago to compile and run with zero issues.
Re:The tragedy of running an old Node project by watsocd on Monday November 18, 2024 @03:35PM (#42176678)
Absolutely not. Not on the client side anyway.

I know of one application by a large multinational that requires java in the browser to run. Almost impossible to run now because of security restrictions.

Re:The tragedy of running an old Node project by em-bee on Monday November 18, 2024 @03:55PM (#42176905)
well java on the desktop and java in the browser are two entirely different beasts. the problem here is not java but the changes that have been made in the browser.
Re:The tragedy of running an old Node project by kimi on Tuesday November 19, 2024 @08:30AM (#42183200)
We do have some very old and likely lost all sources "client apps" that are a single JAR and date from around 2003-2004, written in Swing. They still work.

Of course when they stop working they will be phased out, but we have been expecting their death for years now and not happening yet.

Re:The tragedy of running an old Node project by int_19h on Monday November 18, 2024 @02:47PM (#42176160)
The ecosystem has not improved since then.
Re:The tragedy of running an old Node project by abdisalan on Monday November 18, 2024 @01:38PM (#42175458)
Wow, that’s honestly impressive.

If there was an option to guarantee versions could exist for X amount of years (maybe even months?) then that would greatly help the stability of projects.

Re:The tragedy of running an old Node project by meiraleal on Monday November 18, 2024 @03:10PM (#42176366)
the problem was your research before using the packages then. So much bad engineering and architectural planning is blamed on the tools, not the human using it.