

The cost only increases if you’re trying to diagnose an issue towards the tail end of a procedure. It’s not cost-effective to have spare developer-grade machines lying around just to test installation procedures, nor is it time-effective to be wiping and rebuilding machines either. How do we agree on anything? The obvious answer is that a fresh OS install on a specific type of machine is our common starting point - it’s a fixed point in time. But if all our machines are unique and acquire crud and customizations over time, there are bound to be disagreements: along the lines of “that works on my machine”, and “well not on my machine”.

We need robust documentation and scripts to make that happen smoothly. So as developers, we still spend a decent portion of our daily life outside of containers. Containerization technology like Docker is a huge help here, and we use Docker at Rally for many tasks. Builds that are reliable and reproducible are a great thing.
