Somewhere along the line developers have seemed to loose the ability to be weary of what impact their decisions have on the people using the product.
This was all too apparent when I used to build extensions for PageLines. For two years I built over 100 different plugins for PageLines. Everything from sliders, to galleries, menus, and beyond (this is why I can claim that I’ve easily built over 150 WordPress plugins over the last few years). And, with every update PageLines made, it broke something within my extensions.
It quickly became an up-hill battle. By the time I would get through fixing bugs from the previous update, the next update would come, changing things again, causing even more work. Ultimately, the amount of time spent maintaining and fixing the plugins far exceeded what I was making on them, so I pulled the plug. That was the end of PageLines, and the sad thing was that, it was all preventable.
I get it though, as developers we’re obsessed with making our products better. We’ll sit for days nitpicking something that only 5% of people would pick up. But we obsess because we know it’s there. But when it comes down to something like visual changes, you have to think twice. Instead of just removing a CSS class, deprecate the class and add a new one.
Most importantly, communicate your changes giving users plenty of time to adapt.