As you probably know, setting things up in a developer's environment
is wild — you don't know what to expect. It's hard to set things up
deterministically, and reproduce one environment into
another. Homebrew for instance, tries to do as
best as it can, but since it treats the environment as a global
space in which dumping things, alike a singleton class that anyone
can modify, that often results in hard-to-debug errors.
The first time that I heard about Nix was on this blog
post
from Pinterest, but it didn't catch my attention until now. I
started reading about it and watching some internal videos that
Burke is creating to evangelize
the idea. The more I read about it, the more amazed I am with the
idea.