30
Ikaroz
259d

How in the fuck can people develop using Node.js?! What the absolute shit is happening here?! The simple upgrade from 14.16.0 to 16.13.0 (LTS) provides a list of error messages a mile long and no clear answer as how to fix these! And the time it took them go from 14.16.0 to 16.13.0 is only 9 months! What the fuck is this shit?! I'm supposed to use the LTS and have to rebuild my app every 9 months completely because you have no idea what backwards compatibility is?! There isn't even any guides on how to do major version upgrades for your applications so I assume these sons of bitches think we're gonna run unsecure node.js versions on our servers forever? What the fuck, seriously!

Comments
  • 10
    Yep.

    Wait till you get a package that has major changes in every 0.0.n upgrade. Shit drives you nuts trying to resolves changes, and the number of vulnerabilities detected that spew out.

    NodeJS allows super fast development, but it's useless days or weeks later if something changes in a package.

    "But you can lock package versions"
    You shouldn't have to lock minor versions you dumb fucks. Learn how to use versioning correctly you ass hats.
  • 2
    I thought Python's module ecosystem sucked until I tried node.js for the first time. Node allows for some really rapid development but a lot of node devs play fast and loose with industry standards.

    Upgrading some of our docker containers from node 14 to 16 was a goddamn nightmare. Dependency hell, deprecation hell, etc.
  • 0
    And here i am looking at you while searching for an way to document my commandlinetools with libraries from redhat.
  • 9
    The obvious solution: Reduce dependencies and choose them by their stability and security track record.
  • 2
    Isn't that an npm issue in general? Try bumping any library version in a react project and the whole thing goes to shit
  • 3
    The old problem of npm version X node version

    One of the reasons that I prefer the least amount of libraries
  • 1
    @Oktokolo precisely. Still a risky business. I love Node and Javascript and would absolutely love to use it for something big. But the breakneck ecosystem changes makes it really hard. One could potentially use the standard libraries included to build everything really. Node has a very well structured standard lib. But man it would be a pain to deal with everything like that leaving the bare minimum to other third party libraries.

    The web landscape is very fucky indeed.
  • 1
    I remember downloading node 13 thinking "Why would I NOT download the latest version?" when I first needed to use npm and then being completely confused months later when I got errors saying

    "Your node version is not supported. Supported versions 12|14".

    Also, since microsoft got their grubby hands on node, they forced newer versions to be incompatible with windows 7, which is complete bullshit.
  • 4
    I haven't opened my Angular project for what.. over a month now. I'm scared af at this point, as most definitely it will no longer compile and I'll have to spend another day elbows-deep in the npm's dependency shit-pit.

    What an annoying PITA
  • 1
    And then you have fucktards who go rogue and break their NPM shit deliberately - thus also everything depending on it: https://bleepingcomputer.com/news/...

    That's what happens when a whole ecosystem doesn't see any problem with pulling in random code by strangers from all across the internet.
  • 2
    I never understood why Java and its libraries were extremely backward compatible until I worked in enterprise products
  • 0
    I got used to the pain.
  • 1
    Speaking of, I'm hoping to move my API to golang, but I'm so deep into node that I don't even know where to begin. Send help.
  • 0
    You are saved that you weren't too optimistic and downloaded LTS, I downloaded current and that were absolutely right that it wasn't stable
  • 0
    15 and 16 are massive updates that include a lot of long overdue changes.
  • 0
    Since 16 though I've never had Node in my package.json and never had any problems arising from a node version mismatch (other than the occasional error when gyp bindings fail to build due to an unspecified environmental dependency in a situation where it shouldn't even have to be rebuilt but a node version mismatch forces it to).
  • 0
    But gyp is a native-sandbox bridge that also usually bridges two different package managers so it's pretty mush doomed to be extremely fragile.
  • 0
    Reading all this ensures me in my opinion to never, never, never even consider using node for projects. I'll stick to ruby tyvm!
  • 1
    And then theres PHP, where they choose to change order of parameters like implode(array, separator) to implode(separator, array) between versions.
    Node upgrades on the other hand went pretty well for me. Just don‘t rely on too many third party libs.
  • 0
    I'm really glad that I only did some cloud function's in node with no deps but the sdk. Go, PHP and even Python are way nicer to maintain
  • 0
    @progmem you make it sound like really bad. They have been supporting both!!! signatures for a long time because it was basically a mistake and confusing.
    You get deprecation warnings since the 2019 7.4 release. They removed the legacy signature in the next major release 8.0. PHP 7.4 is supported till the end of this year.

    I mean people bitch about the confusing param order, they fix it in a graceful way and still people complain.
  • 1
    @hjk101 people bitch about php all the time. It's what the cool kids do. Don't pay attention to them
  • 1
    I'm a PHP developer by nature. It's so much simpler than Node.js.
  • 0
    I didn't think they broke backwards compatibility often
  • 0
    @Ikaroz depends on what you‘re trying to achieve. Filling a website template with data from a db - easy. Building a realtime/reactive system (eg websockets) - nope.
    But I must confess. The worst thing about PHP is that it reminds me of old, ugly legacy code. If someone comes around with PHP 5.4/5.6 code these days that „needs updating“, I run.
Add Comment