Bun reminds me of systemd. Back then, systemd was anti the common wisdom of "do one thing, and do it well", not just an init system but a software suite (service manager, logind, networkd, journald ...), Despite all the fuss, it got widely adopted. Bun's the same, a bundler,

1 min read Original article ↗

Bun reminds me of systemd. Back then, systemd was anti the common wisdom of "do one thing, and do it well", not just an init system but a software suite (service manager, logind, networkd, journald ...), Despite all the fuss, it got widely adopted. Bun's the same, a bundler, package manager, testing suite, TS compiler, ..etc This is not yet another layer of abstraction, but more of a "coherence glue". There's a cognitive overhead when devs have to do the "chain glue" themselves. Even if the tools being chained (piped) -in isolation- are perfect. The bottom line: Coherence glue > sparse glue. Coherence glues tend to become runtimes when the said tools are re-adapted (rewritten) to accommodate their collective incentives. And as the Python's Zen put it: > Practicality beats purity