Windows, on the other hand, generally does incremental upgrades.
At least, given that macOS is using a copy-on-write filesystem such that you can share blocks between multiple volumes/snapshots — which it is; and that the OS base-image is a sealed "everyone has the same cryptographic checksum" volume — which it is; and that Apple are using a binary-diff-based "create aside" OS-image update process, like ChromiumOS/CoreOS — which they are. They should only have to write out disk pages for the changes, and then just link the existing pages in to form the rest of the extents. Like a `btrfs receive`.
But for some reason, despite all that fancy tech, it's still slow; and the install process still requires rebooting into a separate Recovery OS to do parts of the installation. Which, given the "create aside" part especially, is just ridiculous. You should be able to just run the installer in the background as you're using your device, and eventually be told "when you reboot, it'll be into the new OS."
If we assume the drive can write 500MB/s (conservative), and an OS install takes up 50GB of space (conservative), it should take less than 2 minutes to write the partition. Where does the other 58 minutes go?
My guess is that nobody really took the time to optimize it. Installation is only one-time procedure and even it if takes a hour, who cares.
As for Debian, the slowness comes mostly for fsync calls I think. You should be able to use eatmydata to avoid this. See: https://people.skolelinux.org/pere/blog/Quicker_Debian_insta...
Presumably, you're experiencing the same download issues my work MBP is experiencing. It's been downloading for over an hour and is just barely past 50%. My Internet bandwidth is 10G real-world and un-busy, so presumably Apple's CDN is getting hit good.
Coming from Windows and Linux, macOS had been a very unpleasant experience for me. It's full of papercuts.
The same could be said to the opposite transition, from macOS to Linux and/or Windows. All of these OSs are mature and old enough to have thousands of papercuts different from the thousands of papercuts of the other OSs, the impression is mostly based on what you are used to.
I used to be staunchly anti-Apple/Mac up to 2010-ish, nowadays I simply can't work and feel productive with a Windows machine. Linux can be a bit more pleasant until I get to the edges of the Linux-on-desktop UX and the experience crumbles.
Windows is definitely the most unpleasant experience I've ever had on desktop OSs, and I was a user all the way from Win3.11 to Windows 7 (latest iterations only on a gaming computer though).
Nowadays more and more updates come in a "rollup" package which is a bundle of many updates and it's take it or leave it. Even worse, some of the bigger feature updates are actually full OS reinstalls under the hood.
TIL