3 ms·
I don't think it's just that, though I agree they are clearly correlated. The reason I don't think it's a sufficient explanation is that there is a clear histo
by tsimionescu 2mo ago
I don't think it's just that, though I agree they are clearly correlated.
The reason I don't think it's a sufficient explanation is that there is a clear history of large, 3rd party libraries being created exactly to supplement poor standard libraries. C++ has Boost, Java has Apache Commons (though Java also has a pretty huge standard library), arguably we could even say C has Posix/Win32/Cocoa.
I believe there is some deeper cultural reason why certain language ecosystems coalesce large utility libraries, while others prefer myriad tiny dependencies.
- DanielHB 2mo agoThe reason is simple: the package manager works well. Helps if the package manager is standardized and there is a "default" registry for open source projects. I remember the days where I had to manually put the Spring .jar files into my project. No way I am doing that for 100s of dependencies.
- whstl 2mo agoThe important difference IMO is in the small vs big libraries culture. Lots of languages have a bad stdlib but don’t fall into the trap of having thousands of micro libraries. The reason people do it is because it brings clout and money. Just look for articles defending micro libs: the popular ones are by people who make a living on donations, due to maintaining 1000+ packages. And collaborating in larger libs/stdlib is hard. Plus: Rust, Node, all have a lot of visibility. You need a good stdlib culture to avoid it (like Go did).
- porridgeraisin 2mo agoYep. It comes down to the way funding flows in the ecosystem.