Software vendors in general really need to invest in BC testing - and run early, public beta tests where real users' feedback is heard. Because big companies ignoring their users frustrate people and it takes only a small company's mess up to tip the iceberg...
edit: It might also be an idea if you have a millions-usages-product and you feel the need to redesign or break BC, you should explain to your (paying!) customers why you negatively affect their lives. Or make the change revertable (an option in a config menu, or just a config.ini entry), so that new users (which you A/B tested your new idea on!!!) get the new behavior, and old users with muscle memory training can continue to use the old way.