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 That's not a bug! There's a four year old comment in a busy Discord that says the make might fail if you didn't first hindersnoop the clamberpop in the .config of the adjunct sleezoid!
(so exhausted)
-
@mhoye That's not a bug! There's a four year old comment in a busy Discord that says the make might fail if you didn't first hindersnoop the clamberpop in the .config of the adjunct sleezoid!
(so exhausted)
@just_one_bear chat systems in general and discord specifically are places knowledge goes to die.
-
@mhoye @owen why would you bother to build it? Just run our 9 containers on your server. https://github.com/michielbdejong/fxa-self-hosting
-
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 any time a build process becomes yak shaving it's because one or more steps in it was taken for granted as being trivially reproducible (either by the person who created the process or one of its stack constituent processes)
-
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 in a way, I think that clear expectation can also relieve some pressure on the developer. Installing software is not either "download a binary and it definitely works perfectly" or "follow our documentation and work out the intricacies based on chatroom conversations", it's a clear install process. And yes it might have bugs. The rest of your software also has bugs! You aren't some unique failure of a developer, you just have probably a high priority bug for your list.
-
-
@mhoye in a way, I think that clear expectation can also relieve some pressure on the developer. Installing software is not either "download a binary and it definitely works perfectly" or "follow our documentation and work out the intricacies based on chatroom conversations", it's a clear install process. And yes it might have bugs. The rest of your software also has bugs! You aren't some unique failure of a developer, you just have probably a high priority bug for your list.
@npdoty it’s also a growth path for a community-oriented project. “If the install process doesn’t work for you, we consider that a bug and would like to hear from you” is makes getting involved very accessible to new participants.
-
@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.
-
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