Why is there a separate development and production environment?
Category:
technology and computing
operating systems
Reasons for having separate environments
To reduce risks of unwanted downtime due to developers ad-hoc rigging. To improve the SLA of application and provide better user experience to your users. To reduce the risks of production data getting into the wrong hands.
Also question is, what is the difference between development and production environment?
"Prod" means "Production". It describes the environment you are providing to the customers. On the other hand, "Dev" means "Development", its the environment which the developers work on.
Herein, why do we need a separate environment for the developers and testers?
A separate environment also allows QA to test installation issues and fulfillment of all software requirements. You usually setup a separate QA environment, because you want to give the testers an isolated environment on which to test, so that developers and testers can work at the same time.
Once you know what the environments are used for it'll make since why we have so many of them. The main three environments are: development, stage, and production.