Understanding development environments
Development environment is another overused term in the industry. It has a different connotation in website development—referring to server levels intended for development, testing, and deployment—and is often conflated with an IDE. For the purposes of this book, we define your development environment to simply be the software environment where you work, the substrate through which you develop your product. It can be best understood through examples, and we can helpfully break down different development environments into three main categories.
The first is a local environment, such as a PC running a standard OS (Linux, Mac, or Windows). The second is a virtual environment—for example, Docker or VirtualBox. The third is a cloud environment, such as AWS or the Google Cloud Platform (GCP). This section breaks down the key considerations when selecting one of these types of development environments.
This is a decision often...