Always grateful when 'make' just works, even if it's a wrapper around a bunch of baroque nonsense, especially when it's a wrapper around a bunch of baroque nonsense.
-
I guess I'm old, but “clone, build in one step, install in one step” should be the baseline minimum standard of codebase ergonomics.
I mean, you switched to aardvark/gruntmaven because bazel ninja womble didn't integrate well with chumbawumba sconsburgler and a fraggle zumba donkastonk pipeline wouldn't support reflocolative combobulates? Great. Nobody should have to give a shit about that to build your software. They should be able to type 'make' and watch and if that breaks it’s a bug.
@mhoye ah, I see the problem - you want fragg13 not fraggle. I realize it's marked as an unmaintained fork, but that's just marketing.
-
@datarama
One could go so far as to call it a shipping ship shipping ship shipping shipping ships.Not me, of course, but someone could.
-
@datarama
One could go so far as to call it a shipping ship shipping ship shipping shipping ships.Not me, of course, but someone could.
@silvermoon82 I am sure that there are places on the internet where people are shipping shipping ship shipping ships shipping shipping ships and ship shipping ships shipping shipping ships.
-
Always grateful when 'make' just works, even if it's a wrapper around a bunch of baroque nonsense, especially when it's a wrapper around a bunch of baroque nonsense.
@mhoye literally three posts later in my timeline https://infosec.exchange/@i0null/117053648196360311
-
@mhoye literally three posts later in my timeline https://infosec.exchange/@i0null/117053648196360311
@irvingreid amazing.
-
@elebertus @mhoye This is very much why I made that thread the other day like "you can hate containers, but please understand the bleeding wound they gauze over for the median UNIX-derivative toucher" (not quite in those words, but yeah). Containers really help *formalize* your dependencies, assumptions, and processes - if you're hanging onto the Dockerfile or comparable recipe - while also allowing most of your audience to live their whole natural lives without caring. If you do have to care sometime, the recipe is your audit trail for studying what the heck is going on.
Containers still have their flaws (and are absolutely offensive to me as a solution for perceived issues in the desktop app space), but they do solve some problems that are currently hard to find better alternative solutions to.
@MaddieM4 @elebertus
Aren't those containers themselves supported on one and a half platforms (Linux and FreeBSD (and secretly SmartOS))?
@mhoye -
@elebertus @mhoye This is very much why I made that thread the other day like "you can hate containers, but please understand the bleeding wound they gauze over for the median UNIX-derivative toucher" (not quite in those words, but yeah). Containers really help *formalize* your dependencies, assumptions, and processes - if you're hanging onto the Dockerfile or comparable recipe - while also allowing most of your audience to live their whole natural lives without caring. If you do have to care sometime, the recipe is your audit trail for studying what the heck is going on.
Containers still have their flaws (and are absolutely offensive to me as a solution for perceived issues in the desktop app space), but they do solve some problems that are currently hard to find better alternative solutions to.
@MaddieM4 @elebertus @mhoye I don't know, the problem is that containers bring their own problems to the table.
Yes, in a way it simplifies things because suddenly everyone is on a "single environment". But I find Docker very problematic. Podman is nice, but then some people want to use Docker anyway.
Unfortunately, any answer has its problems. At work we currently use nixpkgs for dependencies, but that also brings its own problems.
-
@MaddieM4 @elebertus @mhoye I don't know, the problem is that containers bring their own problems to the table.
Yes, in a way it simplifies things because suddenly everyone is on a "single environment". But I find Docker very problematic. Podman is nice, but then some people want to use Docker anyway.
Unfortunately, any answer has its problems. At work we currently use nixpkgs for dependencies, but that also brings its own problems.
@coder @MaddieM4 @mhoye @elebertus for internal projects, my preferred way is to hope that I only have to support a limited number of environments, and make sure there's up-to-date instructions for all of them. I'm likely lucky, but in the projects I've worked on, this has not been so difficult!
My big issue is with having to support macOS or Windows, because frequently, work will not provide me environments.
-
@MaddieM4 @elebertus @mhoye I don't know, the problem is that containers bring their own problems to the table.
Yes, in a way it simplifies things because suddenly everyone is on a "single environment". But I find Docker very problematic. Podman is nice, but then some people want to use Docker anyway.
Unfortunately, any answer has its problems. At work we currently use nixpkgs for dependencies, but that also brings its own problems.
@coder @MaddieM4 @elebertus The thing is, if you know your dependencies you can get from there to whatever containerization you want pretty easily. But the reverse is very, very not true.
I mean, Docker was born because somebody told an ops person "well it works on my machine" and the ops person said "well we'll ship your machine then" and from the stories I've heard it took _years_ to stabilize and secure AWS after starting with that as a foundation.
-
I guess I'm old, but “clone, build in one step, install in one step” should be the baseline minimum standard of codebase ergonomics.
I mean, you switched to aardvark/gruntmaven because bazel ninja womble didn't integrate well with chumbawumba sconsburgler and a fraggle zumba donkastonk pipeline wouldn't support reflocolative combobulates? Great. Nobody should have to give a shit about that to build your software. They should be able to type 'make' and watch and if that breaks it’s a bug.
-
I guess I'm old, but “clone, build in one step, install in one step” should be the baseline minimum standard of codebase ergonomics.
I mean, you switched to aardvark/gruntmaven because bazel ninja womble didn't integrate well with chumbawumba sconsburgler and a fraggle zumba donkastonk pipeline wouldn't support reflocolative combobulates? Great. Nobody should have to give a shit about that to build your software. They should be able to type 'make' and watch and if that breaks it’s a bug.
@mhoye
For most projects: You type "npm install" and then you type "npm build"
Works fine, as long as the supply chain isn't currently attacked -
Always grateful when 'make' just works, even if it's a wrapper around a bunch of baroque nonsense, especially when it's a wrapper around a bunch of baroque nonsense.
@mhoye except when the baroque nonsense sudo curl half a gigabyte of build system tools
-
@MaddieM4 @elebertus
Aren't those containers themselves supported on one and a half platforms (Linux and FreeBSD (and secretly SmartOS))?
@mhoye@gemelen @MaddieM4 @elebertus @mhoye hahahahahaha lol
-
@elebertus @mhoye @coder @MaddieM4 I wrote about the topic here:
https://alex.corcoles.net/notes/tech/containers-might-not-be-the-right-answer
It really depends. In any case, I agree that software should be designed to be easy to run. In some cases, containers can be the right answer.
-
@MaddieM4 @elebertus @mhoye I don't know, the problem is that containers bring their own problems to the table.
Yes, in a way it simplifies things because suddenly everyone is on a "single environment". But I find Docker very problematic. Podman is nice, but then some people want to use Docker anyway.
Unfortunately, any answer has its problems. At work we currently use nixpkgs for dependencies, but that also brings its own problems.
@coder @mhoye @elebertus I hear you about Nixpkgs. What's kind of a funny coincidence is that I literally started writing a package manager to be a similar tool to Nix but with a lot more engineering and UX emphasis (#Layover), because I found Nix's pros compelling but the cons agonizing. Unfortunately I detoured into making a new programming language to implement it in (#pronelang), and then got sick in a way that slowed down progress significantly. C'est la vie, I guess
️ -
-
@mhoye ah, I see the problem - you want fragg13 not fraggle. I realize it's marked as an unmaintained fork, but that's just marketing.
-
More seriously, here is a true fact: if you can’t get from a bare, minimal-install machine to “ready to build” in one step, then you don’t know what your dependencies really are. If you can’t get from “ready to build” to a working binary in one step, then you don’t know what your build process really is.
You might not care! But if the day comes that you suddenly do need to care a lot, whether for a new contributor or a red hot CVE, learning will be very difficult.
@mhoye I agree.
But I think this truism forces many people to confront the thought that (system!) package management is important, even necessary to form this understanding and chart a course through the dependency graph; and I think that a large fraction of people confronted in this way reject the idea so hard that they then go on to do foolish, silly, damaging things rather than adjust their beliefs.
System package manager maintainers, AND HUMILITY, are bedrock software infrastructure.
-
I guess I'm old, but “clone, build in one step, install in one step” should be the baseline minimum standard of codebase ergonomics.
I mean, you switched to aardvark/gruntmaven because bazel ninja womble didn't integrate well with chumbawumba sconsburgler and a fraggle zumba donkastonk pipeline wouldn't support reflocolative combobulates? Great. Nobody should have to give a shit about that to build your software. They should be able to type 'make' and watch and if that breaks it’s a bug.
-
P pelle@veganism.social shared this topic