News for hackers. Stuff that matters.
Re:Battery packs: Let's talk about crates, baby by ho_lee_phuk on Saturday July 18, 2026 @04:12AM (#48956145)
Go ecosystems seems to choose quality over quantity (fewer higher-quality libraries) over Rust.

What seems to be causing this?

Re:Battery packs: Let's talk about crates, baby by olalonde on Saturday July 18, 2026 @04:42AM (#48956265)
I'd say ease of package management. You can see this with Python too.
Re:Battery packs: Let's talk about crates, baby by inigyou on Saturday July 18, 2026 @06:24AM (#48956698)
Package management is easier in Go than almost any other ecosystem, including Rust, Python and Javascript. And Go projects may have tens of package dependencies. Yet it's closer to a C++ project which has single-digit dependencies than a Javascript project which has tens of thousands.
Re:Battery packs: Let's talk about crates, baby by olalonde on Saturday July 18, 2026 @08:11AM (#48957380)
Interesting. When I learned Go a while ago, it didn't have a package manager. You just pulled down master branches directly into your global GOPATH. So pulling in a dependency was a big decision and people naturally favored "batteries included" libraries. That probably still permeates the culture today.
Re:Battery packs: Let's talk about crates, baby by inigyou on Saturday July 18, 2026 @08:39AM (#48957614)
That is the package manager. The package has a URL. You import the URL and you're done.
Re:Battery packs: Let's talk about crates, baby by olalonde on Saturday July 18, 2026 @09:10AM (#48957848)
Back then there was no versioning. When you imported a URL, you had to hope that all your projects and transient dependencies happened to be compatible with whatever commit was currently sitting on the master branch. Because one update could silently break an unrelated project on your machine, adding a dependency was a bigger decision. That naturally led the ecosystem to favor fewer, larger libraries.

PS: it looks like this issue was addressed in 2019 with the introduction of Go Modules.

Re:Battery packs: Let's talk about crates, baby by whstl on Saturday July 18, 2026 @05:08AM (#48956390)
Money dictates personal philosophies.

Rust and Node have too many deps because you can't make a Patreon or Github Sponsors page for contributions to stdlib.

Go is batteries-included because it was made by Google by people with a salary.

The people writing "thousands of small packages are good" are the people making money from the clout of having made thousands of small packages.

Re:Battery packs: Let's talk about crates, baby by inigyou on Saturday July 18, 2026 @06:23AM (#48956696)
What is Python?
Re:Battery packs: Let's talk about crates, baby by whstl on Sunday July 19, 2026 @06:27AM (#48966682)
It's probably both?

Started famously as batteries-included, until people started realizing there's money in dependencies.

I'm not a lot into Python, though. I still write a lot of it, but I don't really read or participate in its community.