• MangoCats@feddit.it
    link
    fedilink
    English
    arrow-up
    2
    ·
    2 days ago

    Back in the day, I was getting a new “99% compatible” DOS version every 6 months (until we transitioned to the PharLap 32 bit extender, got more memory to work with AND stopped the perpetual upgrade treadmill.)

    That “99% compatible” thing means: in a 10,000 LOC codebase, you’ve got 100 things to fix before it works on the new DOS.

    I really liked working with Qt from 2006-2024 or so, the only major break was 4-5 (must admit, I never migrated to 6, and nobody forced me to…) and the migration from 4-5 was less painful than a DOS version bump. Also, Qt fully insulated our code from garbage changes happening at lower layers.

    • elephantium@lemmy.world
      link
      fedilink
      English
      arrow-up
      1
      ·
      1 day ago

      Most of my version-upgrade woes seem comparatively recent, lol

      1. Nullable contexts. It’s “easy” to update this with a setting in your project file! … but it adds warnings to basically every file in the project :( You could break it up by adding a preprocessor directive, but it still added a lot of noise at the time.
      2. File-scoped namespaces. I like this feature for new code, but OUCH does it mess up code reviews when it’s an incidental change. I really grew to love Github’s “ignore whitespace” setting in the PR diff view because of this.
      3. Migrating from 4.6 to .NET Core. There were a few times when a deploy just … stopped. It worked on our desktops, and it worked on our test server, but the prod deploy just choked. We might have finally gotten a clue about what was wrong from the event viewer, but it’s been a while. I do recall that our usual troubleshooting path was useless in this case!
      • MangoCats@feddit.it
        link
        fedilink
        English
        arrow-up
        1
        ·
        1 day ago

        adding a preprocessor directive

        Yeah, I’ve had to do that a few times lately. Really tweaked me when gcc transitioned things from warnings to errors.

        Migrating from 4.6 to .NET Core.

        Are we on .NET 7? No, only 8 is available here without unreasonable effort to backdate. Does the .NET 7 code run in 8 without mods? Yes, but that doesn’t change the hassle of talking endlessly about it.

        • elephantium@lemmy.world
          link
          fedilink
          English
          arrow-up
          1
          ·
          22 hours ago

          Are we on .NET 7?

          No. We weren’t. This one was about a decade ago, around the time they first released .NET Core.

          talking endlessly about it

          Eh…ideally you’d have the conversation once, around what upgrade strategy to use, then execute on it. Upgrade yearly vs. ride out LTS windows. Etc.

          • MangoCats@feddit.it
            link
            fedilink
            English
            arrow-up
            1
            ·
            8 hours ago

            Yeah, I’m in a bigger company, so I have the conversation with the local group, then the various other “Subject Matter Expert” groups that touch the same project in their own way, and just when I think I’m done having it there’s some group that submarines up and says “but we haven’t qualified our code to run on 8 so if you’re going to use it you’ll have to pay us to do the qualification, but we’re really busy so that’s going to be about 6 months before we can get to it…”