> Most Windows GUI stuff breaks down badly when you try to do more advanced things.
Define "more advanced."
I hear what you're saying. The upgrade path in both can be very broken when you change things. But I find that in windows more of the options you need are provided by the settings GUIs and handle upgrades well. Most linux packages and OS settings start and stop with the text file config, or provide GUIs as loose wrappers over text configs which rarely support upgrade flows.
Providing upgrade support for user's arbitrary text configs is significantly harder than for a more restrictive and structured settings database.
The most basic: tell Windows the hardware clock uses UTC because I dual boot with Linux (registry).
A bit more advanced: Enable TPM + PIN for BitLocker (group policy).
At work: set up split-view DNS on a Windows Server (PowerShell).
> But I find that in windows more of the options you need are provided by the settings GUIs and handle upgrades well.
I beg to differ. I feel like every other month I have to go back and tell Windows that no, I don't want it to consider tabs in Edge as different windows when I alt-tab. It's one of the first things I change. Yesterday I had to go do it again on my gaming PC. Sure, this can be done comfortably in the settings GUI, but it doesn't seem to stick for some reason.
> Providing upgrade support for user's arbitrary text configs is significantly harder than for a more restrictive and structured settings database.
Oh, I definitely agree with this, and I think that Apple's approach to configuration (as in "there's none") is probably based on this.
But I think that Windows is pretty much the poster child for configuration broken up in a zillion different places. I mean, the registry is a meme for a reason, right?
Define "more advanced."
I hear what you're saying. The upgrade path in both can be very broken when you change things. But I find that in windows more of the options you need are provided by the settings GUIs and handle upgrades well. Most linux packages and OS settings start and stop with the text file config, or provide GUIs as loose wrappers over text configs which rarely support upgrade flows.
Providing upgrade support for user's arbitrary text configs is significantly harder than for a more restrictive and structured settings database.