| Yep. 1. Every day there's a new package. 2. Then five more packages appear so you don't have to write that one terrifying line of JavaScript yourself. 3. Then someone writes a wrapper around those five packages. 4. Then someone writes a "modern, lightweight, zero-config" wrapper around the wrapper. 5. Then a framework adopts it, a build tool requires it, and suddenly your todo app has a dependency graph that looks like international diplomacy. 6. Out of 100 devs building the same product, there are now 300 different dependency combinations, all somehow involving 'left-pad' spiritually if not literally. 7. Half the packages are maintained by one person, unpaid, at 2 a.m., after getting yelled at in GitHub issues. 8. The other half were abandoned three years ago but still have 40 million weekly downloads because removing them would break civilization. 9. Pinning dependencies sounds nice until the ecosystem tells you, "sorry, this package only works with Node 22, this plugin needs Node 18, and this transitive dependency has discovered ESM enlightenment." 10. So everyone lives on the bleeding edge, except nobody agrees where the edge is, and the bleeding part is very real. So yeah, npm is not uniquely cursed because JavaScript devs are worse. It's cursed because it turned code reuse into a lifestyle, dependency trees into rainforests, and 'npm install' into an act of faith. |
By a manager for for a >$1 billion market cap corporation who doesnt understand that the one person isnt an employee.