Virtual Machine Options for Developers Using MacOS
Simply put, a VM makes it possible for you to also work on another — on the same desktop.
Your company probably has a team of developers that work tirelessly to keep your supply chain running smoothly. The puzzle of platforms those software engineers must work with to pull this off is extensive. From software stacks to hardware, to APIs, to automation, to containers, your developers must perform a masterful juggling act to keep everything up and running (and evolving to meet demand).
In order to achieve any level of success with this, your dev team requires all the tools necessary to get the work done. That might mean multiple development platforms. To that end, your developers might not want to have to work with two, three, or even four different workstations to get the job done. If that’s the case, what do they turn to?
To put it simply, a virtual machine is a way for one operating system to emulate another. So if you’re working with one operating system, a virtual machine (or VM, for short) is able to make it possible for you to also work on another — on the same desktop. Working this way is far more economical than having to supply an entire software development company with multiple desktop computers. Instead, you could assign each developer with one machine and they can, with the help of virtual machines, work with multiple platforms.
That’s true even for Apple hardware! That’s right, your application development company can empower your developers to not just work with macOS, but Linux and Windows.
But what virtual machine technology is available for them? You’ll be surprised at how many tools are ready to give a productivity boost to developers on your staff who opt to use Apple hardware.
Let’s take a look at the options. Do note that these options all work with macOS running on Intel architecture. As of this moment, not all of the tools below will run on Apple Silicon.
Multipass is the relative newcomer to the scene. Created by Canonical (the company behind Ubuntu Linux), this virtual machine technology was released to make it easier for developers to work with (and develop for) containers.
The one caveat to Multipass is that it’s only able to spin up virtual instances of Ubuntu Linux. However, on the plus side, Multipass makes it incredibly easy to launch those Ubuntu instances. With a quick command, your developers can be working within a stable, development, or LTS release of Ubuntu Server. Those machines can be started, stopped, and paused. And by using HyperKit (the default backend for macOS), the startup time for the VMs is incredibly fast.
Although Multipass might not have all the bells and whistles associated with standard Virtual Machine software (such as snapshots, cloning, and virtual networks), it does an outstanding job of serving as a means to a virtual Ubuntu Server end.
To sweeten this virtual pot, Multipass is open-source and free to use. It can be installed on macOS via the installer package or by using Homebrew (a third-party package manager for macOS).
As of now, Multipass will not install on Apple hardware powered by the M1 chip.
Parallels is one of the most popular means of running alternate operating systems within macOS. If your developers have a need to run Windows or Linux on their Apple laptops or desktops, Parallels is an outstanding option.
With Parallels, your developers will enjoy increased productivity, accelerated testing, and centralized administration. What makes Parallels special is that it allows your software engineers to quickly shift between operating systems and easily share files and folders between the host (macOS) and the virtualized guests.
Parallels also includes features like Coherence Mode, which allows users to hide the Windows desktop, while still using Windows apps (and easily switch back and forth with a single click or swipe). Parallels also allows your developers to use USB devices and have them recognized by the guest platform.
Parallels isn’t free and will range from $79.99/desktop for a Home/Student desktop license to $99.99/year/desktop for a Business edition license.
At the moment, Parallels will not run on M1-chipped Apple hardware, but the company is in development to make it happen.
QEMU is a popular open-source software that can double as either an emulator or a virtualization tool. Installed via Homebrew, QEMU can handle full-system emulation, user-mode emulation, or full virtualization.
One caveat to using QEMU is that it’s not nearly as user-friendly as the competition. In fact, to use QEMU, your developers will want to have a pretty good understanding of how virtualization and emulation works.
QEMU is capable of virtualizing Linux, BSD, and Windows operating systems. QEMU is also free, but (at the moment) can’t run on Apple hardware powered by M1 chips.
Oracle’s VirtualBox is one of the most widely-used open-source virtualization technologies on the market. Not only does it make spinning up Linux and Windows VMs easy, it offers all the features your developers will need, such as snapshots, virtual network management, virtual file systems, shared folders, extensive hardware support, USB passthrough, no hardware virtualization required, remote machine display, headless usage, cloning, grouping, full-screen and seamless mode, recording, and system state saving.
And so long as your hardware can support it (with enough local storage and RAM), VirtualBox allows you to run multiple guests simultaneously. What’s more — VirtualBox is free to use on as many host machines as you need.
Unfortunately, VirtualBox does not run on M1 chipped Apple Hardware, and there’s no indication that it will be developed for the new silicon.
VMware Fusion is an incredibly important piece of the puzzle, as it is one of the most popular options for business and enterprise usage. So if your software development company is working with larger businesses, this might be the best option. Not only does VMware offer outstanding virtualization products, but their support is also world-class.
But more importantly, VMware Fusion is in the process of adopting new technologies found in macOS Big Sur and will (hopefully) be available for Apple Silicon soon.
VMware Fusion runs on your Mac, just like any application, and allows you to install guest instances of Windows that can be used alongside macOS. One very handy feature of VMware Fusion is called Sidecar, which allows you to drive a VM from your iPad.
At the moment, VMware Fusion doesn’t support the M1 chip, but it does look as though they will bring such support to the public in 2021. However, when running VMware Fusion on an M1 chip, it will not run VMs that require Intel or AMD hardware. Because of that, your developers will have to run ARM-based operating systems as guests.
The cost of VMware fusion depends on the version you need. You can purchase VMware Fusion Player for $149.00, VMware Fusion Pro for $199, or VMware Fusion Pro with Support Basic for one year for $241. For more information on version features, check out the VMware Fusion price matrix.
If you have software engineers who prefer to work on Apple hardware, but need to also use other platforms for development, they have plenty of options. Just be careful as you consider migrating that hardware to the new Apple Silicon, as your choice of virtual machine management tools may not function as needed.