Do not upgrade


  • ♿ (Parody)

    OK, nothing surprising in there but a fun read, especially the twist at the end.

    I had a somewhat similar thing just happen. I went to upgrade from Angular 11 to 12 (because there's a new major version every 6 months, of course and I had some time to do it right now). It went really smoothly locally, but Angular 12 no longer works with node 10. Our build server is RHEL6 and apparently there's no easy way to get a newer version of node on there. We've been meaning to upgrade that to RHEL7 (which the rest of our stuff is already on) but for raisins it just hasn't happened, though I guess this will probably be the final straw.


  • Banned

    Do developers have to take the overhead of worrying about the numerous dependencies in the toolchain as much as their own business logic?

    Yes, and you're an idiot if you ever thought otherwise.

    I know :kneeling_warthog: is a popular philosophy but what's with people thinking dependency management is not part of a developer's job description? It's one thing to ignore your responsibilities, it's another to not be aware of your responsibilities in the first place. Just because the code isn't in your repo doesn't mean it won't run on the target machine as part of your application. That's kinda the point of the dependencies. And you better make sure running your application won't compromise the target machine.


  • Considered Harmful

    How is it acceptable for frameworks, libraries, and build systems to constantly keep getting in the way of actually writing business logic, the whole point of writing software.

    Because business logic is not the point. Never has been.
    How else would the industry keep going if not for the carrot and the stick?
    Stroustrup C++ 'interview' was not an instruction manual. And yet here we are.


  • Banned

    This one is good too:

    That reminds me of a developer that I spoke to who only knew how to deploy a static website via a “CI/CD” system connected to a K8s cluster. They did not know that it was possible to cp or rsync an index.html file to a directory on a Linux system running a web server. They were unable to even visualize that fundamental concept because CI/CD and K8s was their baseline.

    I still don't know what Kubernetes is or what it's for or why anyone uses it. I believe I'm a happier man not knowing that.


  • Notification Spam Recipient

    @Gąska said in Do not upgrade:

    I still don't know what Kubernetes is or what it's for or why anyone uses it. I believe I'm a happier man not knowing that.

    Sensible man.


  • Discourse touched me in a no-no place

    @Gąska I get the vague impression (at a disinterested distance) that it's some sort of virtualized server cluster manager, and that it is used to add modes of failure to your software stack.


  • Java Dev

    @dkf Ah. Like terraform.


  • Banned

    @PleegWat I've never read a sci-fi book where terraforming doesn't eventually become a catastrophe.


  • Discourse touched me in a no-no place

    @Gąska said in Do not upgrade:

    @PleegWat I've never read a sci-fi book where terraforming doesn't eventually become a catastrophe.

    One of the best series on that is Kim Stanley Robinson's Mars series. There are a few disasters along the way, but overall the terraforming is a success.


  • ♿ (Parody)

    @Gąska said in Do not upgrade:

    @PleegWat I've never read a sci-fi book where terraforming doesn't eventually become a catastrophe.

    In the Altered Carbon series they started out that way but people learn and manage to make it work.


  • Banned

    @boomzilla just like in webdev!


  • ♿ (Parody)


  • Considered Harmful

    @Gąska said in Do not upgrade:

    @boomzilla just like in webdev!

    IME they haven't made it work.


  • BINNED

    @Gąska said in Do not upgrade:

    This one is good too:

    That reminds me of a developer that I spoke to who only knew how to deploy a static website via a “CI/CD” system connected to a K8s cluster. They did not know that it was possible to cp or rsync an index.html file to a directory on a Linux system running a web server. They were unable to even visualize that fundamental concept because CI/CD and K8s was their baseline.

    I still don't know what Kubernetes is or what it's for or why anyone uses it. I believe I'm a happier man not knowing that.

    I still haven’t even used docker or really know what it is/how it works. I was shocked recently when I read some news from the IT department that it’s no longer free to use, because I assumed that’s how everyone is supposed to ship their crap now. Is it not open source? How do they expect people to use it?

    Anyway, the only thing I know about kubernetes is that @apapadimoulis posted an amazing rant about it and the other crazy shit people are supposed to be using. Which was probably just a self-advertisement, but I have so little idea what the fuck it is that I couldn’t tell the difference anyway.


  • Banned

    @topspin said in Do not upgrade:

    @Gąska said in Do not upgrade:

    This one is good too:

    That reminds me of a developer that I spoke to who only knew how to deploy a static website via a “CI/CD” system connected to a K8s cluster. They did not know that it was possible to cp or rsync an index.html file to a directory on a Linux system running a web server. They were unable to even visualize that fundamental concept because CI/CD and K8s was their baseline.

    I still don't know what Kubernetes is or what it's for or why anyone uses it. I believe I'm a happier man not knowing that.

    I still haven’t even used docker or really know what it is/how it works.

    I finally got around to trying Docker recently. It ended with a colossal failure. Apparently, Microsoft's own Visual Studio Code has zero support for Microsoft's own Native Windows Containers.


  • ♿ (Parody)

    @topspin said in Do not upgrade:

    @Gąska said in Do not upgrade:

    This one is good too:

    That reminds me of a developer that I spoke to who only knew how to deploy a static website via a “CI/CD” system connected to a K8s cluster. They did not know that it was possible to cp or rsync an index.html file to a directory on a Linux system running a web server. They were unable to even visualize that fundamental concept because CI/CD and K8s was their baseline.

    I still don't know what Kubernetes is or what it's for or why anyone uses it. I believe I'm a happier man not knowing that.

    I still haven’t even used docker or really know what it is/how it works. I was shocked recently when I read some news from the IT department that it’s no longer free to use, because I assumed that’s how everyone is supposed to ship their crap now. Is it not open source? How do they expect people to use it?

    Dockierhub just changed their terms. We use it for TDWTF. Basically, it's pointed at our github repo and builds the docker containers for us, so basically we just have to download them in order to deploy. I'm sure you could get by without that, but it's convenient.


  • And then the murders began.

    @Gąska said in Do not upgrade:

    I know :kneeling_warthog: is a popular philosophy but what's with people thinking dependency management is not part of a developer's job description?

    It's part of the job description, but the dependencies for even a simple "Hello, World" web page have spiraled out of control. We've gone from "everything you need ships with the OS as part of the .NET install" c. 2008 to "here's your 20 billion packages making up ASP.NET Core, plus another 10,000 npm packages for your client-side JavaScript to make it pretty".


  • Banned

    @Unperverted-Vixen said in Do not upgrade:

    @Gąska said in Do not upgrade:

    I know :kneeling_warthog: is a popular philosophy but what's with people thinking dependency management is not part of a developer's job description?

    It's part of the job description, but the dependencies for even a simple "Hello, World" web page have spiraled out of control. We've gone from "everything you need ships with the OS as part of the .NET install" c. 2008 to "here's your 20 billion packages making up ASP.NET Core, plus another 10,000 npm packages for your client-side JavaScript to make it pretty".

    And the former is a direct consequence of the latter. And the reason for the shift is that people simply stopped caring. If every transitive dependency had to be properly vetted, it would be simply infeasible to have too many of them, and so there would be no libraries that have that many of them.



  • In my current job, I can't install dependencies to work in my current project if I install the current version of Node.JS (v16.11.0) and have to fallback to earlier version (v12.X) for similar reason.



  • @boomzilla said in Do not upgrade:

    @topspin said in Do not upgrade:

    @Gąska said in Do not upgrade:

    This one is good too:

    That reminds me of a developer that I spoke to who only knew how to deploy a static website via a “CI/CD” system connected to a K8s cluster. They did not know that it was possible to cp or rsync an index.html file to a directory on a Linux system running a web server. They were unable to even visualize that fundamental concept because CI/CD and K8s was their baseline.

    I still don't know what Kubernetes is or what it's for or why anyone uses it. I believe I'm a happier man not knowing that.

    I still haven’t even used docker or really know what it is/how it works. I was shocked recently when I read some news from the IT department that it’s no longer free to use, because I assumed that’s how everyone is supposed to ship their crap now. Is it not open source? How do they expect people to use it?

    Dockierhub just changed their terms. We use it for TDWTF. Basically, it's pointed at our github repo and builds the docker containers for us, so basically we just have to download them in order to deploy. I'm sure you could get by without that, but it's convenient.

    I believe @topspin is actually talking about the recent change of Docker Desktop license, which is no longer free for "large" businesses (250+ people or $10mil+ revenue).

    Docker Desktop is a desktop (duh) application for Mac OS X or Windows that automatically manages Linux VM where the real docker runs. It handles the stuff like networking, makes cli available on the host machine, etc - creating very handy illusion that the containers are actually running on the Mac/Windows. But there are many, many other opensource applications that do the same (alternatively, you can run your own VM like a cavemanpro).

    Docker Desktop also provides some GUI, which is definitely :wtf: material and it has been already discussed on this forum (and I still think it will eventually earn its own thread; for example, how did they manage to botch the auto-update feature??). Ditching it completely is recommended even for companies with less people/revenue.



  • @dkf said in Do not upgrade:

    @Gąska I get the vague impression (at a disinterested distance) that it's some sort of virtualized server cluster manager, and that it is used to add modes of failure to your software stack.

    Basically. As a rule: if you're developer, you should not worry about it unless (until) OPS says that you should. Because handling the tricky moving parts is their job.

    And if you're running your own deployment and production, then you probably already know all pros and cons and can decide what to use. At least, you should. If not, you're going to learn the hard way.


  • Banned

    @Kamil-Podlesak said in Do not upgrade:

    creating very handy illusion that the containers are actually running on the Mac/Windows.

    Dunno about Mac, but on Windows it uses Linux subsystem, which is quite different from Linux VM. Also, it can use Windows containers too. But apparently not both at once for whatever reason.



  • @Gąska said in Do not upgrade:

    @Kamil-Podlesak said in Do not upgrade:

    creating very handy illusion that the containers are actually running on the Mac/Windows.

    Dunno about Mac, but on Windows it uses Linux subsystem, which is quite different from Linux VM. Also, it can use Windows containers too. But apparently not both at once for whatever reason.

    Docker Desktop uses Linux subsystem? I am a little surprised that Linux subsystem does support everything that's needed for containers, but TIL.

    And windows containers are... strange. Does anyone actually use them?


  • kills Dumbledore

    @Kamil-Podlesak said in Do not upgrade:

    @Gąska said in Do not upgrade:

    @Kamil-Podlesak said in Do not upgrade:

    creating very handy illusion that the containers are actually running on the Mac/Windows.

    Dunno about Mac, but on Windows it uses Linux subsystem, which is quite different from Linux VM. Also, it can use Windows containers too. But apparently not both at once for whatever reason.

    Docker Desktop uses Linux subsystem? I am a little surprised that Linux subsystem does support everything that's needed for containers, but TIL.

    And windows containers are... strange. Does anyone actually use them?

    I’m having to deal with them at the moment because my antivirus is doing something that kills the entire CLR whenever I try to run a .net framework web project, but not when run through Docker, and of course full framework means windows containers. They work well enough, but the switching between windows and Linux to manage different containers gets old fast


  • Banned

    @Jaloopa said in Do not upgrade:

    my antivirus

    :trwtf:


  • kills Dumbledore

    @Gąska more specifically, my company’s mandated antivirus which is notoriously bad for false positives and I’m not able to disable. There’s talk of migrating to something different but it’s low priority so I’m sitting here almost unable to work


  • Banned

    @Jaloopa you're excused.


  • kills Dumbledore

    @Gąska said in Do not upgrade:

    @Jaloopa you're excused.

    DBEF3A22-1E54-4B6B-A750-0ECCD871EB8D.jpeg


  • ♿ (Parody)

    @Kamil-Podlesak said in Do not upgrade:

    Docker Desktop is a desktop (duh) application for Mac OS X or Windows

    Oh, OK. I don't follow or use that at all.


  • :belt_onion:

    @Kamil-Podlesak said in Do not upgrade:

    Docker Desktop uses Linux subsystem? I am a little surprised that Linux subsystem does support everything that's needed for containers, but TIL.

    It used to use a VM, I believe that's new in WSL2.

    And anyone running Docker Desktop in production is probably in line for much pain and suffering. Why not just go native Linux I cannot fathom



  • @boomzilla said in Do not upgrade:

    @Kamil-Podlesak said in Do not upgrade:

    Docker Desktop is a desktop (duh) application for Mac OS X or Windows

    Oh, OK. I don't follow or use that at all.

    I think the only thing I've ever used it for was to tick off the checkbox to integrate with WSL. Also if it's not running docker doesn't seem to work in WSL.


  • Notification Spam Recipient

    @sloosecannon said in Do not upgrade:

    Why not just go native Linux I cannot fathom

    Because hur-dur muh mouse GUI? 🤔


  • Banned

    @sloosecannon said in Do not upgrade:

    @Kamil-Podlesak said in Do not upgrade:

    Docker Desktop uses Linux subsystem? I am a little surprised that Linux subsystem does support everything that's needed for containers, but TIL.

    It used to use a VM, I believe that's new in WSL2.

    Docker supports WSL1 too. As I said, I knew nothing about docker before 2 weeks ago, and I still know almost nothing (AND I HAPPY WITH THAT DON'T TEACH ME), so dunno, maybe in the past it used a full blown VM.


  • Fake News

    @Gąska said in Do not upgrade:

    and I still know almost nothing (AND I HAPPY WITH THAT DON'T TEACH ME)

    If you insist... :kneeling_warthog:



  • @Gąska Docker is pretty great, like a lightweight VM on top of your machine, the only problem is you can't run services in it as there is no init.d


  • Notification Spam Recipient

    @dangeRuss said in Do not upgrade:

    @Gąska Docker is pretty great, like a lightweight VM on top of your machine, the only problem is you can't run services in it as there is no init.d

    Well, you can, it's just that implementers typically make that service its own container.

    For example, NGinx is typically a service, but in docker it's a non-deamonized instance.

    Unless you mean "containers can't react to system events like an init.d script can"?



  • @Tsaukpaetra said in Do not upgrade:

    @dangeRuss said in Do not upgrade:

    @Gąska Docker is pretty great, like a lightweight VM on top of your machine, the only problem is you can't run services in it as there is no init.d

    Well, you can, it's just that implementers typically make that service its own container.

    For example, NGinx is typically a service, but in docker it's a non-deamonized instance.

    Unless you mean "containers can't react to system events like an init.d script can"?

    I mean yes you can start the docker using a start file, but you can't like just start up a centos docker for example and start the httpd service in there. Or maybe I'm just confused and you just can't do that in WSL. I remember I was trying to get ZFS working on there, but no such luck.


  • Notification Spam Recipient

    @dangeRuss said in Do not upgrade:

    but you can't like just start up a centos docker for example and start the httpd service in there.

    Well, no, that kinda goes against the point of Docker. Docker isn't a VM, it just (sometimes) uses them to do the container-ing.

    @dangeRuss said in Do not upgrade:

    Or maybe I'm just confused and you just can't do that in WSL.

    Yeah WSL isn't Docker and vice versa. You can emulate that by calling the init.d scripts (i.e. using a scheduled task that reacts to the service that drives WSL being started), but again that wouldn't be in a docker. And in fact would be opposite of the intent of Docker.

    It sounds like you want an actual VM, and not something that uses kinda-sorta-VMs.

    @dangeRuss said in Do not upgrade:

    I remember I was trying to get ZFS working on there, but no such luck.

    I was using this:

    It works pretty well. Doesn't like removable drives, but was fairly stable last build I tried. For given values of "well" and "fairly" and "stable".



  • @Tsaukpaetra said in Do not upgrade:

    It works pretty well. Doesn't like removable drives, but was fairly stable last build I tried. For given values of "well" and "fairly" and "stable".

    I can't even get the latest version to be stable on linux.



  • @dangeRuss said in Do not upgrade:

    @Tsaukpaetra said in Do not upgrade:

    @dangeRuss said in Do not upgrade:

    @Gąska Docker is pretty great, like a lightweight VM on top of your machine, the only problem is you can't run services in it as there is no init.d

    Well, you can, it's just that implementers typically make that service its own container.

    For example, NGinx is typically a service, but in docker it's a non-deamonized instance.

    Unless you mean "containers can't react to system events like an init.d script can"?

    I mean yes you can start the docker using a start file, but you can't like just start up a centos docker for example and start the httpd service in there.

    :um-actually: You can, but you really should not. This is not a place for details, but let's say that the whole "container is like a lightweight VM" is basically a kindergarten-level of simplification.


  • Notification Spam Recipient

    @dangeRuss said in Do not upgrade:

    @Tsaukpaetra said in Do not upgrade:

    It works pretty well. Doesn't like removable drives, but was fairly stable last build I tried. For given values of "well" and "fairly" and "stable".

    I can't even get the latest version to be stable on linux.

    🤷♂ I could lend you some of my hardware if you think that would help.

    Why are you trying to run ZFS in Windows anyways?



  • @Tsaukpaetra said in Do not upgrade:

    @dangeRuss said in Do not upgrade:

    @Tsaukpaetra said in Do not upgrade:

    It works pretty well. Doesn't like removable drives, but was fairly stable last build I tried. For given values of "well" and "fairly" and "stable".

    I can't even get the latest version to be stable on linux.

    🤷♂ I could lend you some of my hardware if you think that would help.

    Why are you trying to run ZFS in Windows anyways?

    I just love it so much on linux, thought I could get it in WSL. Mostly for the transparent compression.



  • @dangeRuss NTFS has transparent compression available. But it's better to have one FS that's stable under both systems, so I get it...



  • @TwelveBaud said in Do not upgrade:

    @dangeRuss NTFS has transparent compression available. But it's better to have one FS that's stable under both systems, so I get it...

    I've used NTFS compression in the past - it's OK, not great. ZFS latest version supports ZSTD compression, which is pretty great.



  • At work I am working on a React app that uses react-select. By mistake my boss installed a different version of that package on his PC and that caused the app to not compile. The kicker is that my boss installed a newer minor version. Shouldn't only major version updates have breaking changes? I am insane for not updating packages unless there is a bug fix that I want or something else broke?



  • @magnusmaster said in Do not upgrade:

    At work I am working on a React app that uses react-select. By mistake my boss installed a different version of that package on his PC and that caused the app to not compile. The kicker is that my boss installed a newer minor version. Shouldn't only major version updates have breaking changes? I am insane for not updating packages unless there is a bug fix that I want or something else broke?

    You are using JavaScript and npm wrong because you’re meant to always be using the latest version of everything all the time no matter how rapid the release cycle and that includes not caring about backwards compatibility breakage.

    Move fast and break things, it’s the only way.


  • Banned

    @Arantor punctuation matters.

    You are using JavaScript and npm. Wrong!


  • Discourse touched me in a no-no place

    @Arantor said in Do not upgrade:

    Move fast and break things, it’s the only way.

    BRB,, got some school kids to run over at 70mph…



  • @dangeRuss said in Do not upgrade:

    I mean yes you can start the docker using a start file, but you can't like just start up a centos docker for example and start the httpd service in there.

    The point of docker is that you have a container for just that one app. So you simply give httpd as the command to run when starting the container. And you can tell docker to “restart=always” and it will automatically start it after reboot or if it crashes. You can also tell it to run a small helper init that reaps zombies if you have a program that spawns a lot of children and detaches them.

    @dangeRuss said in Do not upgrade:

    Or maybe I'm just confused and you just can't do that in WSL.

    WSL indeed by default does not have init, and it is an obstacle among other things when trying to get docker running in it, because docker normally expects to be running under systemd.



  • @Jaloopa said in Do not upgrade:

    I’m having to deal with them at the moment because my antivirus is doing something that kills the entire CLR whenever I try to run a .net framework web project, but not when run through Docker, and of course full framework means windows containers. They work well enough, but the switching between windows and Linux to manage different containers gets old fast

    Do you have any idea how to set them up without the ill-fated docker-for-desktop purple abomination?

    I'd like to try them out for continuous integration, because updating the build agents requires assistance of an admin, while updating a Dockerfile and rebuilding a container could be done by someone on the project much more easily. But we are a “large company” (by a bit).


Log in to reply