Logo Ryan Petris

Why not Windows?

Posted on February 15, 2022 in Technology tagged Computer Software

I've been using Linux as my primary operating system for a long time now, long enough to have forgotten some of the nuances and downsides of it. Looking at the newer features of Windows 11, I've been tempted to switch back, and I even tried using it for a month or so. Ultimately, however, it didn't work out, and the more I think about it the more cons I can think of.

Don't get me wrong, Linux isn't perfect, and some of those defects are the reason why I thought about switching, however there are a handful of things that I just can't get over about Windows, causing me to stay with Linux.

Here are the pros and cons that I have observed that matter to me.

Pros

  1. Secure Boot - This virtually eliminates boot-time viruses since the boot chain is signature validated and will refuse to boot if anything doesn't match.

    This is available on Linux as well, with some distributions shipping it by default like Ubuntu, however this still causes problems when compiling kernel modules with DKMS such as VMware or VirualBox kernel modules needed for virtualization.

  2. Virtualization-Based Security - Using a hypervisor to isolate applications from the rest of the system, limiting the damage that malware/viruses can do.

  3. Games - While Linux support for Windows games is getting better, Windows still dominates the gaming marker. Hopefully Valve's Steam Deck will help change this, but only time will tell.

  4. Software Installation - All software for Windows is either packaged in an installer or is a standalone app that can be unzipped, stuck somewhere, and run.

    I hold Linux to a higher standard here since most Linux distributions are based around repositories, with those repositories containing lots of software that can be installed with a single command. This falls apart however for software not in the repository.

    For instance, VMware Workstation has an installer that's distribution-independent, but it just puts files where it feels like it and now that's not tracked by the package manager. Given that this is standard practice on Windows, that's okay, but it's not standard practice for most Linux distributions.

  5. Hardware Support - Drivers in general are more available for Windows and are sometimes of better quality.

    The primary offender in Linux is Nvidia with their closed-source driver. The Nvidia-provided driver is closed source and requires a shim to be compiled against the kernel to load appropriately. Once used, newer Linux standards such as Wayland cannot be used due to Nvidia's insistence on not supporting it. While the open-source (nouveau) driver does work with Wayland, it's been neutered by Nvidia due to the hardware requiring signed/encrypted firmware to be loaded to do things such as change the frequency. Nouveau is unable to do this and therefore is severely crippled.

    Other hardware, such as fingerprint readers, smart card readers, etc., just don't have drivers at all on Linux.

  6. HDR - Windows supports HDR content. Linux currently does not.

Cons

  1. Signed Software - While this sounds good in theory, in practice it causes more problems than it solves. For instance, there was a recent fiasco shortly after the release of Windows 11 where a signing certificate expired, causing several built-in applications to not start.

  2. Microsoft Account - Windows is becoming more and more reliant on having a valid Microsoft account, which can be suspended by Microsoft for benign reasons such as uploading a picture of your child in the bath to OneDrive or even just using a vpn.

  3. Drive Letters - Why are drive letters still a thing, other than for backwards compatibility? While I admit 26 is a large number of drives, having that limitation is kind of ridiculous. On top of that, lets say you use an external drive regularly; there's no guarantee that drive will always land on the same letter when plugged in, which could mess up some workflows.

  4. The Registry - While there's not technically much wrong with having a centralized place for configuration, it can get large and bloated, slowing the whole system down. While there's remedies for this, most opt to just reinstall when this becomes a problem.

  5. Reverse Scrolling - There's an option to enable this for trackpads, but not regular mice. Logitech has options to enable this for their own mice, but there's no universal control for this.

  6. Hardware Dependency - Linux installations can be transferred between machines generally without or with minimal configuration changes.

    While you can move a Windows installation in the same manner, you're likely to run into issues if your hard disk isn't attached in the same way (AHCI/NVMe/Intel RST/etc.) or if your platform changes (Intel/AMD). Even if you manage to successfully migrate, a bunch of junk from the previous system will be left lying around in the registry and in Device Manager.

    For instance, your Wi-Fi adapter might be named "Wi-Fi 2" since the old adapter from the previous machine was named "Wi-Fi". Maybe you don't care, but it bothers me. Yes it can be cleaned up and devices can be renamed, but I still consider this a problem.

  7. Firewall Necessity - Lots of services such a file sharing is enabled by default in Windows, making a firewall a necessity. Most Linux distributions don't have any external services running by default; while some distributions may have a firewall enabled by default, it's really not necessary. Additionally, firewall notifications on Windows generally appear at inopportune times, such as after launching a game, causing the game to malfunction in some manner the first time it's run.

  8. Online Licensing - While not much happens anymore if Windows thinks a machine isn't licensed, online licensing is still used. Given that Microsoft doesn't state exactly what will cause an installation to be flagged as unlicensed, then it could happen at any time for any reason. Linux distributions don't use this type of licensing, and therefore they can be "offline", or just not in the general internet, forever without causing a problem.

  9. File Locking - Windows keeps track of open files and if a file is open, it prevents actions such as disconnecting removable drives.

    If this worked correctly all the time then it wouldn't really be a problem. I've had problems with Windows not allowing a drive to be disconnected after using an ISO within VMWare Workstation, even though the ISO has been disconnected form the VM. I would have to fully quit Workstation for the file lock to be released, allowing me to disconnect the drive.

Conclusion

While I would like the extra security that Virtualization-Based Security provides and to have the ability to watch HDR content, those are minor concerns compared to moving towards requiring Microsoft accounts, online licensing, etc., among its other shortcomings.

Basically, if my computer has the chance of becoming inoperable due to something simple such as not connecting to the internet within a period of time, then it ceases being my hardware and is merely something I'm licensing. I don't like how things are going in that direction, and therefore I will resist in any way that I can.