• GolfNovemberUniform@lemmy.ml
    link
    fedilink
    arrow-up
    4
    arrow-down
    41
    ·
    edit-2
    7 months ago

    That is a misconception that 99% of the devs don’t understand. Sometimes you do need major changes that break stuff to upgrade the base. GNOME started doing it recently. Keeping old bases for a very long time makes them bloated, hacky, slow and unstable

    • TimeSquirrel@kbin.social
      link
      fedilink
      arrow-up
      32
      ·
      edit-2
      7 months ago

      In that case, you implement the old API or other interfaces so older things will continue working, while having the new one alongside it, and then phase the old one out when nobody is using it anymore. It’s not that hard to emulate an older API with a newer subsystem. Just a shitload of function wrappers and things so that the things your program used to call now transparently use the new system while the program is unaware anything changed from its perspective.

      That’s what happens with the Linux kernel. Linus would go apeshit if one of the devs straight up broke a ton of user programs with a change. He’s already demonstrated his commitment to not doing that in one of his mailing list rants. Because unlike GNOME, the kernel is running some pretty critical things all around the world.

      GNOME seems to be treating their DE like their own little pet project that they’re tinkering with alone in the basement without caring that millions are relying on it every day. Breaking a large portion of programs on a regular basis is what I do in the evenings. Not professionals.