Why use Nix?
Many years ago I wrote https://domenkozar.com/2014/03/11/why-puppet-chef-ansible-arent-good-enough-and-we-can-do-better/, but there's probably better way to explain today like https://constructolution.wordpress.com/2012/07/08/divergent-convergent-and-congruent-infrastructures/
I would love any discussion to the why use nix question.
My meandering reactions to the question:
One could emphasize the pitfalls nix helps you avoid:
- Nix keeps you from the vortex of divergent infrastructure.
But also what you gain
- Nix introduces simplicity and opportunity to creating and managing systems
I think we usually talk about how, and less about the kind of problems it solves.
It makes easy to make and run software It makes easy to create configuration files It makes easy to manage configuration files It makes easy to restore my system It makes it easy to share/reuse solutions It makes easy to onboard a new employee 99.84% of guarantee that my software will run like it did in previous stages of development. 00.16% would be disk space issues. It cures all kinds of diseases, but isn't used for this because LISP came first.¹
¹not approved by FDA
Related, Julia Evans about containers.
