The package managers were invented in hell to make us all miserable but Go Modules suck less

By Baruch Sadogursky

Elevator Pitch

Most of the package managers in the world suck. In this talk, we’ll present “the seven deadly sins” of package management; And then we’ll talk about how Russ Cox and the Go Modules team learned from the industry experience and delivered what looks like a huge step forward for Go.

Description

Most of the package managers in the world suck. Not because their authors are stupid or didn’t know what they are doing, but because surprisingly, package management is about people, not technology, and people are weird, unpredictable and hard to work with.

In this talk we’ll discuss why realizing a transitive dependencies directed acyclic graph, although a requirement, is not enough for a great package manager; We’ll present “the seven deadly sins” of package management, and how the existing package managers suffer from them; And then we’ll talk about how Russ Cox and the Go Modules team learned from the industry experience and delivered what looks like a huge step forward for Go.

Notes

This is a pair talk. My co-speaker bio is below:

Alexey Palazhchenko

Alexey discovered Go around r60 and never looked back. He wrote one of the first package managers for Go (gonuts.io) back in1.0 days. He is still busy with everything around Go: writing open-source Go code at Percona, co-hosting GolangShow podcast, and organizing Golang Moscow meetup group and GopherCon Russia conference.