Just like most of the Developers out there, I am comfortable with solutions being developed in development environments, tested in test environments and then eventually moved to production for end users.
But, I am seeing this practice challenged more often than less in the recent years. Many customers dont want to have these multiple environments in place for many reasons – effort, cost, etc. I have worked on projects where there was only a single production environment. I have also worked on projects with up to 7 different environments – PoC/Demo, Dev, Test, UAT, Staging, Prod and DR.
The advances in Software and Hardware Virtualisation is helping with creating and managing various environments for development, staging, DR, etc relatively easy and cost effective to some extent. Cloud is seen everywhere these days and it is also making the expectation of having an always on infrastrucutre, cheap and resilient to become a reality in many cases. For those who can use Cloud, it will make creating multiple environments easy.
Regardless of the lesser cost, I also think that high use of Cloud will