Post #4039764
2026-07-23 12:18 UTC
The best answer I have at a big scale is to break software into small pieces that are allowed permanence/completion, and relieved of the responsibility to be the right tool for every job.
https://maddiem4.cc/blog/fuller-stack/002a-immutability-as-maintenance-doctrine
In practice, this means relying on things like generic types, interfaces, or even duck types to allow library code to be small, purposeful, humble, and flexible. This allows you to push as many decisions as possible as late as possible, so that composition freedom is moved to the final application developer's plate to the highest achievable degree.
Replies (1)
-
@MaddieM4@raphus.social 2026-07-23 14:25
This train of thought is highly related, btw, to how early (or just small) computers needed custom software (either a very tailored OS or no OS at all), and the idea of running a general-purpose OS on such hardware can be genuinely wasteful.