I can spin up a virtual Windows, Mac, or Linux machine, and access it via virtual desktop, from any linux host running LXD 3.0+ (currently Ubuntu 18.04 server). I can go from a freshly installed server to a fully functional, deterministic dev environment in one git clone and build script run.
I also keep a virtual desktop or two around for any long running tasks that require a GUI environment, or for browser tabs I want to keep open long term.