As computers have become more capable with faster processors, huge amounts of RAM, and blazing-quick storage, their ability to run more than one operating system simultaneously via virtualization has grown along with them. What used to be something done once in a while is now commonplace and shoudl be a part of any developer’s workflow.
It might seem odd that someone would need another computer within their computer, but virtualization offers many advantages. For example, even though I run Linux as my primary OS, I have several other virtualized Linux machines for various development tasks, such as database and web servers. On my personal desktop, I have Windows 7 virtualized in order to use proprietary software for my document scanner that is simply not available on Linux. The list goes on and on. You can even set up Linux Virtual machines within Windows or MacOS to play around.
There are many different virtualization hypervisors out there, but VirtualBox is fast, free, open source and easy to get going. It runs on all the major desktop operating systems and supports many more.
- Try it out: https://www.virtualbox.org/