I think there are several things here that, while vaguely related, should be treated separately:
1. A genuine and (relatively) objectively justified need for a new code base that will make progress/maintenance easier.
2. A change that favours new paradigms that will be liked by a "newer generation" and disliked by others who have
a working paradigm they don't want to give up.
3. A change for change's sake which no one asked for, usually just of an aesthetic or trendy nature.
I think that in FOSS we mostly discuss the really large projects and they will have individual components which will
adhere to all of these categories. Hence I don't like the example of a massive conversion such as KDE4 to 5 as a
justification for a futile change. While that may be true in some cases, it's also great to see
-the better support for Wayland and more recent Xorg hacks which make the DE depend less on deprecated and unmaintained
technology
-the split and reduction of KDE backend functionality to individual pieces, so that we don't have to pull in
a myriad of dependencies just to run a programme on another DE
(and thinking of how I don't like what GTK3 is becoming, I'm looking forward to a time when running LxQt
with individual KDE programmes will be the lean option
)
Same goes for the KDE3 to 4 conversion. Most people criticise the whole endeavour, but actually just mean the
UX/UI changes, the borked file search or Kmail, but this massive conversion surely had a lot of good benefits, like
a more modern desktop with better theming capabilities and font display.
I guess it boils down to what target group one belongs to, but in our pain over the loss/lack of support of something
we find to be a great computing experience, we tend to project the frustration onto the entire very complex phenomenon.