Over the years I have worked on a wide range of technical installations ranging from backend data-driven systems to frontend kiosk-like applications. One of the most tedious and time consuming tasks is to prepare the machines responsible for hosting such applications.
As we all know, installing and uninstalling software in Windows is not trivial. You need to follow workflows, reboot the machine countless times and make sure that in the process, the core Windows features and software needed by your applications still works.
Recently, I was part of a large retail installation we did in New York. The installation required setting up dozens of machines, making sure all of them were striped out of third party software and tools, and at the same time, having the required software components for the system on all machines.
There are a few alternatives for such situations:
- Software Image: prepare one of the machines and generate an image of it that you can use to setup all other machines. The problem is that this often doesn’t work because the hardware and configuration is not always the same among the machines. This becomes impossible when you have machines that differ in hardware configuration.
- Virtual Machine: you could generate an image of the machine and then set it up as a virtual machine on all the other machines. I honestly don’t think this is a viable solution for retail environments where you need your app to have full access to the machine resources. It might be a proven solution for backend systems and cloud hosting, but not for retail installations. I have had bad experiences even on local servers where even the easiest configuration tasks can become really difficult when using virtual machines. And at the end of the day, the native OS running the VMs can always get in the way.
- Setup all Machines: this is the most basic and traditional solution. It requires you to setup all machines, one by one. This is actually the most reliable solution. It guaranties that all machines are clean from useless third party software. It also allows you to configure the OS to prevent updates, unexpected reboots, annoying notifications and the like. The problem with this is that it takes a lot of time and effort, and is always prone to human error.
On the installation I mentioned before we came across with a magic little utility that will make your life a lot easier for such situations. Meet PC Decrapifier. The tool allows you to remove all unwanted applications, third party tools, and any useless software from the machine and leave you with a vanilla installation. It effectively removes the crap from any PC. It is really easy to use, safe and self explanatory. And the best of all is that reduces the time and effort required to clean PCs.
The tool is available for any users, and I’d imagine it is intended for IT and Home users to keep PCs clean. But it is actually incredibly useful for retail installations and frontend native applications. Thanks to this tool, my life on digital retail is easier!