I can understand why you might be skeptical. However, I have learned over the years as a developer investigating update issues that the constraints placed upon the update process to ensure compatibility and resiliency are complex.
The nature of the process used for most Feature Updates requires user data and preference migration and transfer. Notably, an entirely new installation of Windows is created and then existing user data and preferences are migrated or transferred as appropriate. There a variety of good reasons for this from a technical standpoint, but it has certain complexity and performance trade offs so is only used for certain types of updates.
Other types of updates use an in-place upgrade methodology that doesn’t require user data and preference migration but has certain characteristics that make it currently less suitable for major feature updates.
However, I have learned over the years as a developer investigating update issues that the constraints placed upon the update process to ensure compatibility and resiliency are complex.
I have learned over the years that constraints and complexity are often abused to force one's way.
Not necessarily even consciously but if the collective train of thought in a company predominantly wants to prefer one outcome (i.e. market share, world domination) at the expense of another outcome (making users happy), then it tends to be that it's really easy to do things that result in the former and really complex and difficult to do things that result in the latter.
I appreciate that when unexpected outcomes occur it's tempting to vent frustrations and say things in a way intended to influence the feelings of others to validate our own frustrations and feelings. However, as a former colleague of mine (Bryan Cantrill) frequently reminds everyone, empathy is a core engineering value:
I completed the second decade of my software development career just a few years ago and it already seems like the third decade is speeding by. The first 17 years were in the *nix world and the last five have been as part of the Windows development team.
There have been many times that I have incorrectly assumed why a particular outcome occurred only to find out later as I suddenly became responsible for that same scenario that they had good reasons for their choices, and it was either the best possible outcome at the time given constraints or very much an unintended one.
In short, I have been extremely fortunate to have a number of mentors during my career that have helped me realize that perspective and empathy are key to understanding the complexities of software development. Through those experiences I have come to believe that software development is just as much a social discipline as a technical one, especially at scale.
There have been many times that I have incorrectly assumed why a particular outcome occurred only to find out later as I suddenly became responsible for that same scenario that they had good reasons for their choices,
Your attitude is about fifteen years out of date. We live in a world where you have to turn off your wifi if you don't want to use a Microsoft account and any option Microsoft doesn't like us using is displayed in a tiny font that's almost the same color as the background. You don't think we can tell when we're being told to go fuck ourselves?
It does make a difference but doesn’t change the effect of Microsoft’s bad business decisions. There are no doubt many amazing individuals at the company, but the whole Windows ecosystem is polluted. It has lacked identity for the past decade since cancelling Windows Phone.
Gamifying browsing habits, monetizing MSN celebrity gossip on stock widgets and built-in search capabilities… etc… how are we supposed to be productive with such childish garbage?
You seem to be responding with pretty thought-through responses, so I thought I'd ask you this: Given some people have mentioned its possible the confusion happened due to a "dark pattern" - i.e. a deceptive UI choice, or one where the concequences of what things do are not labelled in a seemingly deliberately confusing way, what is the thinking behind this at microsoft? Is it something they would consider changing if enough people struggle with it? How do things like this happen - I struggle to imagine that product developers on the windows team use these default apps themselves. Surely there must be internal dissent about such things?
I've been facinated by microsoft in recent years, they are really putting in a jekyll and hyde performance imo. They are consistently great at developer relations in some areas, with things like generous contributions to hackathons, visual studio code, github copilot, visual studio etc. But seem to make decisions in other areas, in my opinion particularly around the OS team, that needlessly antagonize a lot of people.
If I were living in a place where they had offices, working for MS is something I might consider one day, if only to be able to contribute to such important things that so many people use daily but I feel like I bounce back and forth on this opinion when such confusing decisions come out with seeming silence from microsoft's end.
The nature of the process used for most Feature Updates requires user data and preference migration and transfer. Notably, an entirely new installation of Windows is created and then existing user data and preferences are migrated or transferred as appropriate. There a variety of good reasons for this from a technical standpoint, but it has certain complexity and performance trade offs so is only used for certain types of updates.
Other types of updates use an in-place upgrade methodology that doesn’t require user data and preference migration but has certain characteristics that make it currently less suitable for major feature updates.
Thanks!