Modern application development owes much to the growth of the devops movement and the automation tools it has delivered. Instead of just writing code, developers now need to think in terms the tools they're using -- and how they fit together in a flow from initial idea to a live application.
The container is one of the most important new tools in this new workflow. Technologies like Docker let us capture key services and abstract them away from underlying infrastructure. It's an approach that lets us rethink how we deploy applications and how we can take advantage of cloud infrastructures.
The whole enchilada
At a recent Amazon event in London, an AWS user described how his team handled application updates not by pushing a single change, but by making the output of a build process a "complete infrastructure."