Since the age of software engineering, the unmatched consistency, dependability and accuracy in software and system management have been required by the IT industry. Complex dependency management, inconsistent deployment environments across multiple platforms and "works on my machine" issues are common challenges for operations and development teams. It is still very difficult to create and maintain reproducible artefacts, ranging from development shells to production containers and whole operating systems.
In this session we present Nix, a groundbreaking declarative system created to directly tackle these core issues. By enabling "Anything as Code (AaC)", Nix revolutionises the software and infrastructure lifecycle and ensures determinism, reliability and atomicity across all of your digital assets. We'll look at how this special paradigm offers a unified, version-controlled method for defining and overseeing almost all of your IT stack's components.
In this presentation, we'll show you how Nix enables you to accurately define and control:
Environments as Code (EaC): Building development shells that are completely isolated and reproducible (example: for Python projects).
Building simple, layered, auditable OCI images with total control over their contents is possible with Containers as Code (CaC).
Systems as Code (SaC): Using NixOS to declaratively configure whole operating systems, including desktops and servers.
Using Nixpkgs to provide reliable, consistent package management on all platforms is known as Package Managers as Code (PMaC).
Creating unique operating system images for particular hardware or cloud environments is known as custom OS images as code (COIaC).
Reproducible virtual machine instances are defined and managed using virtual machines as code (VMaC).
We'll show you how Nix accomplishes all of this with a single, potent dependency, streamlining your toolchain, improving CI/CD pipelines, and securing your projects for the future. The goal of this session is to demystify Nix and demonstrate its enormous potential for creating robust and effective systems in any kind of team and organisation.