I personally spent many years explaining to antivirus vendors why we would no longer allow them to "patch" kernel instructions and data structures in memory, why this was a security risk, and why they needed to use approved APIs going forward, that we would no longer support their legacy apps with deep hooks in the Windows kernel -- the same ones that hackers were using to attack consumer systems. Our "friends", the antivirus vendors, turned around and sued us, claiming we were blocking their livelihood and abusing our monopoly power! With friends like that, who needs enemies?
I like how the essay ends. "Was it an incredibly complex product with an amazingly huge ecosystem (the largest in the world at that time)? Yup, that it was. Could we have done better? Yup, you bet... Hindsight is 20/20."