To write code efficiently, we need to be able to rely on our tools. Editors always save files when we ask them to, version control systems restore old files when we ask them to, and so on. This is reproducible: the tool reliably does the same thing when given the same inputs. Many tools lack this reliability, but there does seem to be a positive trend, which we examine in this talk. First, we compare the designs of Git, React, and Bundler, each of which relies on reproducibility and was a huge improvement over its predecessors. Then, we imagine what other benefits might come from continuing to focus on reproducibility in our tools.