The Hybrid of Windows and Linux
As mentioned previously in “Bad things that OSX is doing”, I had purchased a laptop a few months ago, with the intention of setting up Linux and harden it for my personal use.
But I ended up using Windows 10 instead.
For very, very good reasons, the number one of them is that I didn’t have to spend time tweaking for hardware compatibility issues. ZERO, none at all.
That’s a big win.
The last Windows OS I had was Win95. Since then, Windows had came a long way of stability and security these days. I have had this machine for more than 60 days now and there were 0 BSODs or major glitches - things just worked smoothly as it is supposed to.
The other hassles that I didn’t have to deal with were:
- No firewall configuration needed (vs
iptables
) - No multiple screen management issues (compared to pesky
xrandr
issues) - It had all the ‘tiling’ window management I needed easily provided through
powertoys (didn’t have to deal with
i3
annoyances) - Don’t need to deal with PowerSaving/Sleep/Hibernate issues
The last point is the only quality-of-life tool that I needed from any OS. “PowerToys Run”, as with OSX’s “Spotlight” functionality, coupled with a tiling-equivalent tool are the only 2 things that covers 90% of my interactions. Otherwise OSes these days have hardly anything that distinguishes between each other.
But I think my workflow only applies narrowly to some forms of development, as in my use case, I only constantly use an:
- Editor (Visual Studio Code, platform agnostic)
- Shell (Bash, via WSL2/Ubuntu, which is amazing)
- Browser (Firefox - maintaing privacy, see later)
WSL2 on Windows had made the need for a Linux front-end redundant; and the tools that Microsoft has provided in the last decade has been approaching top-notch, with Windows Terminal, Visual Studio Code and WSL2.
WSL2 deserves a special mention, given that it’s made all the Linux tools available into the Host OS itself, negating the need for me to actually install Linux and managing a potentially troublesome desktop user-experience.
I’ve also been leaning towards Microsoft’s cloud ecosystem more as well, just
to balance the dependency (and the all-seeing-eye) of Google. By
segregating the cloud real-estate in different places, the data access pattern
should disallow any single provider a full picture of my online activities. In
some ways, it’s funny that the situation has gone a full circle - Google is
now the new ‘bad guy’ instead. Still, it felt funny to dust off my 20+ years
old HoTMaiL, ahem, Outlook365 account, and integrating that into daily
usage.
In terms of network safety, this is largely offloaded into the cloud; basically all network initiating points are funneled into nextdns.io, thereby allowing me to see what my OS/Applications/Browser has been looking up, and disabling all telemetry that way. I also specifically configured Firefox to use DNS-over-HTTPs - this has an added benefit of allowing me to segregate accesses between my brower from the OS, giving me an easy way to see and block any unwanted DNS that didn’t originate from the browser itself.
So far, this setup has been working very well.