I’ve been frustrated at how difficult it is to explain the basic idea of Nix to people, so I spent some time putting together a presentation to construct a basic mental model for people. I gave this talk at my company yesterday and it was really well-received:
I found it really helpful to break it into 3.5–4 major concepts: the store; the language; derivations; and the idea of build sandboxing. I’ve struggled in the past with these four things all being so inter-related that there’s no obvious place to start, but the store turned out the be the easiest first concept for me to teach.
I plan to turn this into a blog post some time in the next month, which should be a little more useful than slides without the accompanying speech.