Introduction
In episode 1, Bill finished by describing the dependency management conundrum Go faced in its early days. Prior to the Go team providing the module system, developers were on their own to find a solution. Engineers in the Go community did propose different solutions, but there was no general consensus on which tool to use for dependency management.
In this video, Bill will begin to architect a solution to the reproducible build problem. By doing so, you will learn how blockchain hashing works and then Bill will share how centralizing this dependency database will cause other problems. One of these problems is people eventually losing trust in the database because only one stakeholder, Bill, can make changes to it without a means for users to detect the change. He closes this segment with an important question, “how do we establish trust for this CLI’s database?”
Things you will learn in this video
- The hash value of a dependency can be used as a distributed, reproducible UID.
- A collision is when two different files produce the same hash.
- Bill picks the SHA-256 algorithm to reduce the risk of collision.
Video