At PaxSpace, we tend to use free and open-source software(OSS) for mostly everything we do. Most of our computers are setup with Linux. Most of our classes, workshops and workflows utilize OSS so that the everyday maker can use everything we use at the space at home.
You will notice that I’m adding a ‘most’ qualifier to the above statements because it isn’t always possible to stick to a completely open-source tool-chain. Some utilities are Windows only products and they shouldn’t be discounted simply because they are not available on Linux. Most of these products can run reliably under Wine but alas, some do not.
One prime example that is close to PaxSpace is our 2015 Christmas Ornaments!
The ornaments use a PSoC microprocessor that is programmed using the PSoC Creator IDE. This is a great software product that is made freely available from Cypress but is only supported on Windows. People have tried to make it work under Wine but without much success. Luckily it turns out people have had success running it in a Windows Virtual Machine(VM)!
Typically Windows virtual machines aren’t easy to come by. A valid license key is still needed to keep one around and not be in disagreement with Microsoft’s End User License Agreement(EULA). This, fortunately, isn’t the case anymore. Microsoft is now providing virtual machine instances for developer testing. They provide Virtual Box instances, which are easy to use and manage, that will give you a 90-day trial period for the Operating System.
Now… 90-days doesn’t seem a very useful amount of time for an OS. What if I only need this software every 4 months? Interestingly enough VMs allow you to create what is called a snapshot. You can think of a snapshot as a picture of your system at a specific moment in time. You can startup a VM from any snapshot and have it think running back at day 1 of the 90 day trial period. Microsoft even recommends that you do this in their license terms documentation!
It is also highly recommended that you implement a rollback strategy for any virtual machines that you download. This could be as simple as holding onto the original archive that you downloaded, or you could take advantage of our virtualization platform’s snapshotting capability so that you can start over with a fresh VM at any time and not have to worry about the guest operating system running out of trial time.
This opens up many possibilities to run Windows only software in an open-source environment. You no longer need to own a copy of Windows nor have a dedicated machine somewhere for windows only development/workflows.