The Three Pillars of JavaScript Bloat

A brief look at the three main causes of bloat in our JavaScript dependency trees, and how we can start to address them.

It would be interesting to extend this project where opt-in folks submit a "telemetry of diffs," to track how certain dependencies needed to be extended, adapted, or patched; those special cases would be incorporated as future features and new regression tests.

Someday, packages may just be "utility-shaped holes" in which are filled in and published on the fly. Package adoption could come from 80/20 agents [1] exploring these edges (security notwithstanding).

However, as long as new packages inherit dependencies according to a human author's whims, that "voting" cycle has not yet been replaced.

[1] https://news.ycombinator.com/item?id=47472694

Goalless AI Agents: What They Build When No One Is Watching | Hacker News

Fantastic write up!

And we're seeing rust happily going down the same path, especially with the micro packages.