The last time I looked into Nix (a few years back) the expression language was very under documented which made it very difficult to use (e.g. searching for lots of examples to copy paste, instead of working from first principles). Has this gotten better?