Microsoft is trying very hard to emulate the Apple(tm) ecosystem, but fails to realize that their ecosystem has all kinds of fruit in it, not just apples.
Apple computer is able to enforce driver compliance, because they have full control over all the hardware in their ecosystem. They know exactly how every device is put together, what drivers it needs, what quirks it has, etc.
Not so with Microsoft. Windows runs on any old x86 clone, with any random bit of hardware inside. Drivers are made by hundreds of third parties, and compliance with specifications are spotty.
Microsoft wants the perks of a unified platform that "just works", but does not seem to grasp that authoritarian control over hardware, the way apple does it, is the only viable road to getting there. When there is choice, there is dischord between configurations, and this results in a very branched set of best practices and policies-- The very opposite of that unity they seek.
Microsoft has filled a kind of ethical gap between this "Polished plastic dystopia" of apple's ecosystem, and the "Freedom! Terrible, terrible freedom!" of the FOSS ecosystem, where there is freedom of choice in hardware, what drivers you use, how you set up a deployment, etc-- with a standardized set of APIs for application compatibility. It was very popular, and I expect this was a major factor in its ascendancy to market dominance. (Apple clamps down on everything. The only permitted innovation is that which emerges from Cupertino, and then only with the blessing of corporate. Everything works exactly as designed, but there is no freedom at all.-- Meanwhile, in the FOSS community, if you dislike something, you are free to fork it and make it suit your needs however you like, as long as you release the methodology behind your changes publicly, resulting in a massively fragmented array of specialized deployments that is confusing to non-experts. The windows ecosystem was somewhere in-between.)
Lately, Microsoft has noticed that a new trend has emerged, as computers have become a mature technology. People really dont have the mental resources (Mostly related to time, and effort needed) to deal with a free and highly fragmented ecosystem, and want things that "Just work". This has caused a rise in acceptance of the Apple(tm) approach. Sure, there's a lot of things you can't do, or if you can, dont have much choice over the method of getting it done (EG, you can't get apps on an iDevice without Appstore, unless you jail break, etc-- and the only apps on the appstore have been censored and sanitized by Apple. There are no true competitors to iTunes and pals, for instance), but it works, and works pretty reliably. That reliability is desirable to people who really just dont have the resources to deal with the consequences of that expanded freedom. Again, Microsoft seems to be seeing this, and wants to emulate the Apple model, but does not seem to grasp that it means leaving its old niche behind, so it creates horrible copies that are like apples superficially, but lack the reliability that people are really looking for. It's almost like a cargo cult like ritual to attract those users.
Microsoft would do well to realize that Apple is the holder of that niche, and any effort to enter that niche will require dethroning apple. Apple is successful because it understands its niche. Microsoft is fighting a losing battle, and will only end up without a niche at all if it continues.
Instead of trying to pretend to be a polished plastic dystopia, like apple, MS should focus on assuring applications and drivers use their APIs properly, but otherwise be hands off.
This is the kind of battle MS waged in the 90s, when they moved away from the 9x model to the NT model for their flagship product line. Many devices were using drivers that did not properly comply with how they were intended to interface with the OS, according to MS's specs. This is why so many devices became orphaned in the early 2000, when the hardware was perfectly good. The device OEMs did not want to do it the right way, implemented real-mode VxDs to do all kinds of quirky shit behind the OS, (and in some cases, real mode TSRs loaded before windows!) so that they could save money on the hardware (in most cases.) Many people blamed Microsoft, instead of the hardware OEMs that did things incorrectly and knowingly incorrectly-- then refused to release updated drivers because doing so would be expensive, and it was just easier to make people buy new hardware.
We are seeing something similar now, but not as extreme. We have devices that work just fine with older versions of the driver framework APIs that MS does not want to support any more. Things like 64bit drivers for win7, which win10 simply does not want to accept (even though the driver will in fact work just fine), coupled with more draconian digital signature enforcement (The only real stick MS has to keep OEMs in line with driver compliance) resulting in perfectly functional hardware going unsupported, or poorly supported-- But we are also seeing something entirely new, resulting from MS's desire to copy the apple model: Microsoft is moving away from a mature-release cycle, and into a "Rapid, rolling release" cycle.
Why is that bad?
Imagine you are an OEM, and you are developing some new piece of hardware. You develop the product around a specification that Microsoft has released, but it takes time to develop, produce, test, and market your product. By that time, Microsoft has decided that the specification you made your product to meet is obsolete, and now wont support your product, or wont support it properly.
This is why Microsoft is in danger of losing its existing market niche, and just imploding as a company. Without the many different hardware OEMs to pick and choose from, there is no benefit to using them over Apple's or the FOSS community's offerings.
They have essentially come out and said that their new release model will have windows as a service, with constant incremental changes. This is reflected in the two anniversary updates to 10, and how they break so much under the hood.
Dont get me wrong here-- this model CAN work, but MS will *HAVE* to make the rolling release cycle slower, to better match the estimated product lifecycles of the hardware produced by hardware OEMs, otherwise you will have people buying a swanky new video card, or a fancy new printer, and suddenly finding that the card now performs poorly/is crash prone, and that the printer does not work like it used to, because MS pulled the rug out from underneath it, and calls it a feature.
Again, Apple gets around this by tightly controlling the hardware like a tyrannical despot. This is a luxury that MS does not have.
Linux and pals in the FOSS community support ancient hardware for LOOOONG after the expected product lifecycle, which is how they get around it-- they just point out in their communities that while the devices will work, they will lack modern features, and are thus undesirable to retain in service.
Microsoft enjoyed a privileged position in the middle. Not so much any more, and they are actively sabotaging the retention of that position, by playing "Me too!!" with Apple. It was/is this privileged position that enables PC gaming to even be a thing-- for instance. The unified APIs enforced by microsoft let game studios target a generic set of features with established means of access, and hardware OEMs can create unique and customized solutions that best perform and interact via those APIs. There are some edge cases where this causes problems, but for the most part it lets the newest AAA title to work with the deluge of available hardware options with only the minimum of issues.
By wanting to speed up OS development, and with it, changes to the APIs (To bring you "New and exciting features FASTER!"), they make it harder and harder for hardware makers to stay in compliance, they turn the driver certification process into a giant hamsterwheel where these OEMs spin and spin and get nowhere fast, frustrate users because MS releases their new updates before the market is really ready for adoption, causing all these issues, and driving the very people they seek to attract (The people who want it to "Just work") away in record numbers, while driving those that accepted them as the middle ground because of the greater choice they offered with the minimal headache, to the more free and open options from the FOSS community, since at least there, there are ways to make their device work, even if they are painful.
That MS is so detached from the reality of how the software and hardware markets work, and thinks it can dictate these problems away, (and the associated pathologies of how they tried to basically force people to upgrade during the free upgrade period, amongst others) is why I have such a negative view of them.
They are alienating everyone, by pretending that they know what they are doing, when they clearly don't. When they INSIST that they are right, to the point of crippling user systems with their bullshit and leaving the user with no valid methods of resolving the problem besides hemorrhaging money every 3 months on hardware that is better supported, and waiting endlessly in line to resolve the licensing madness that this causes, I feel I have to throw the hat down.