Virtual Environment
The main benefits of having and virtual environment to develop your application outside of having it installed on your main machine are that it gives you the power to experiment and try different experiments without necessarily having an impact on your actual machine. Not only can you create multiple instances of the same environment you can quickly shut off machines and bring more them online, as your application requires them. This is great if one of your interest is scaling your application to multiple machines in a Virtual Environment, making it one of the first steps to moving on to a platform like AWS (Amazon Web Services).
Since the release of VirtualBox in 2007, developing applications has never been the same. If you’re anything like me, you probably don’t always want to be programming in the same language nor programming on the same machine. You want to see what happens when you run your application on multiple platforms. Virtual and cloud environments allow you to do that for little to no cost. Cloud environments can be created for as low as $5.00 USD a month, or virtual environments can be hosted on your machine as much as your hardware will allow. In this section, we will explore virtual environments and find out why and when you should use them.
The current marketplace has a wide variety of virtualization options that allow you to use your current hardware to virtualize a machine. In this section, I will only be covering two of the most common tools used by JavaScript developers.
Virtual Environment with VirtualBox
Why use a virtual environment? I’m not going to go into the reasons on why VE is important or why you should be using it. Instead, I will show you how it relates to software development and why this is a valid option when choosing to go with a host or local setup.
Here is a quick list of some of the advantages.
- Multiple instances of the same operating system in different states.
- Quickly backup and restore instances, great for working with teams.
- Only run the virtual machine when it’s needed instead of having daemons running all the time.
- Keeps your local machine clean.
- Adds another level of security in case your machine is stolen.
- Allows you to create test cases to actual domain names with host files.
- Allows for a sandbox where you can have a machine to machine interactions.
- Cross-platform development with VDI’s.
VirtualBox is defined as follows:
VirtualBox is a powerful x86 and AMD64/Intel64 virtualization product for enterprise as well as home use. Not only is VirtualBox an extremely feature rich, high-performance product for enterprise customers, it is also the only professional solution that is freely available as Open Source Software under the terms of the GNU General Public License (GPL) version 2.
The main take away from VE is to understand that virtual environments are just a tool to keep dependencies of different projects contained in a virtual machine.
I always had a passion for the field of STEM (Science, Technology, Engineering, and Math) and I knew I wanted to do something to make a difference in the world. I just didn’t know where to start. I was an immigrant in a new country, grew up in a tough environment, and wasn’t sure how… Read More