7.1 Why infrastructure as code
You can explain why clicking in a console does not scale past one environment.
Before:06. Containers & KubernetesUnlocks:11. Projects, Certification & Portfolio
Clicking in a console works exactly once, and this topic explains why everything after that needs code: drift, snowflake servers, undocumented changes, and environments that are supposed to be identical but are not. Declarative against imperative is the conceptual split; reviewing an infrastructure change like a code change is the cultural one. It opens the IaC module as motivation, and the confusion it clears is thinking the console and the code can be mixed freely — every hand edit is future drift, and the code stops being the truth the day the first one lands.
Work through these
Drift, snowflake servers and undocumented changes
Environments configured by hand drift apart, and the machine nobody can rebuild is the one that eventually breaks. Naming these failure modes is what makes the case for the whole module.
Declarative vs imperative infrastructure
Declaring the state you want and letting a tool reach it is different from writing the steps to get there. The declarative approach is what makes re-running safe.
Environments as the same code with different variables
The same definition with different values is what keeps development, staging and production genuinely comparable. Environments that differ in unrecorded ways are why bugs appear only in production.
Reviewing an infrastructure change like a code change
Once infrastructure is text, it goes through review and history like any other change. That is the cultural half of the practice, and it is the half that actually prevents outages.
Sign in to keep your progress.
Free resources
We haven't checked most of these for screen reader use yet.
Links last checked 29 Aug 2026.
Stuck here?
Ask a mentor. A real person answers, and they can see exactly which topic you're on. Usually within a couple of working days.
Checking your session…
Topics shown in module order.