3 ms·
> We are destroying software with complex build systems. > We are destroying software with an absurd chain of dependencies, making everything bloated and fragi
by TacticalCoder 2y ago
> We are destroying software with complex build systems.
> We are destroying software with an absurd chain of dependencies, making everything bloated and fragile.
> We are destroying software by making systems that no longer scale down: simple things should be simple to accomplish, in any system.
That's true and I'd say we've got proof for that with the fact that many software is now run in containers.
I always get downvoted for saying that it's not normal we now all run things in containers but I do run my own little infra at home. It's all VMs and containers. I know the drill.
It's not normal that to do something simple and which should be "dumb", it's easier to just launch a container and then interface with the thing using new API calls that are going to be outdated at the next release. We lost something and it's a proof we gave up.
This containerization-of-all-the-things is because we produce and consume turds.
Build complexity went through the roof so we have to isolate a specific build environment in a container file (or, worse, a specific environment tailored to be accept one build already made).
Criticize Emacs as much as you want: the thing builds just fine from source with way more lines of code (moreover in several languages) than most projects. And it builds fine since decades (at least for me). And it doesn't crash (emacs-uptime -> 8 days, 5 hours, 48 minutes and that's nothing. It could be months but I sometimes turn my computer off).
Nowadays you want to run this or that: you better deploy a container to deal with the build complexity, deployment complexity and interacting complexity (where you'll use, say, the soon-to-be-updated REST calls). And you just traded performance for slow-as-molasses-I-wrap-everything-in-JSON calls.
And of course because you just deployed a turd that's going to crash anyway, you have heartbeats to monitor the service and we all applaud when it automatically gets restarted in another container once it crashed: "look what a stable system we have, it's available again?" (wait what, it just crashed again, oh but no problem: we just relaunched another time)
It's sad really.