Thanks for this. I'm not sure if my thoughts are entirely relevant to your post, but i'll type them in anyway :)

I'm having a hard time understanding the current fad for things like virtualisation. I don't see what's wrong with a dev team simply having a central development server with vhosts, rather than each be forced to maintain a complex dev environment on their own machine.

I was forced to use this kind of setup on a recent contract, specifically using Vagrant, and I can honestly say that over the course of the project, about 20% - that's weeks and weeks - of developer time was wasted faffing about with Vagrant and the things living within it.

Compare that to a previous employer, or the contract I'm on now, where it takes less than 5 minutes to get a developer up and running on the dev server, and maintenance is negligible. We spend out time developing instead.

I just find it puzzling.