• CosmicTurtle0@lemmy.dbzer0.com
    link
    fedilink
    English
    arrow-up
    156
    arrow-down
    2
    ·
    2 days ago

    I had this one user who kept using an old report. It used a terribly provisioned db account and had to be changed.

    We created a v2 that was at feature parity to v1 and told users to move off of v1. Slowly but surely it happened.

    Except one user.

    We put up nag screens. Delays on data return, everything we could go “carrot” them to the new version but they stuck with it.

    Eventually I called the guy and just asked him, “Why are you still using the old version?”

    His answer, “no one ever told me about the new version.”

    I asked him if he got our email. He said no. I forwarded it to him.

    “Oh.”

    I asked him didn’t you read the nag screens? He said no.

    I asked him, “The page doesn’t allow you to move on until you wait 90 seconds. Why didn’t you read it?”

    “I didn’t think it was important.”

    I learned an important lesson that day: never wait for all users to move. Once you have enough, start doing scream tests.

    • Ms. ArmoredThirteen@lemmy.zip
      link
      fedilink
      English
      arrow-up
      34
      arrow-down
      1
      ·
      2 days ago

      I used to work for a university trying to modernize how people got student and financial data. Over half my work was playing politics rooting out people who refused to change and going above their head. We had one guy who didn’t want to update a script on his end to include the bare minimum amount of ‘security’: a hard coded plain text password. It took me months and I had to go to his office to update his script and he complained about it the entire four minutes it took

      • bleistift2@sopuli.xyz
        link
        fedilink
        English
        arrow-up
        25
        ·
        2 days ago

        Email to all:

        “Due to budget constraints, resources will shift from $oldThingy to $newThingy. As a result, $oldThingy’s availability can no longer be maintained at the previous level.”

        Then randomly kill oldThingy for more and more hours each day.

    • BehindTheBarrier@programming.dev
      link
      fedilink
      arrow-up
      14
      ·
      22 hours ago

      I was on-site for users learning our new program. Watched them do something, a dialog came up, and faster then i could catch what it was, they closed it. Dialogs are warnings or confirmations you know, and they did not know what it was…

      So yeah, sometimes I do think there should be a wait time on the OK button.

        • BehindTheBarrier@programming.dev
          link
          fedilink
          arrow-up
          2
          ·
          10 hours ago

          It probably makes sense if the program they came from is a badcase, but at least ours don’t go over board. It’s always a “you are probably doing something wrong, but we will allow it if you want to” or a “please confirm you want to do this thing that may have huge consequences”. With what they were learning, they were not touching anything related to the latter. So they probably were doing something wrong.

      • dan@upvote.au
        link
        fedilink
        arrow-up
        14
        ·
        edit-2
        21 hours ago

        a dialog came up, and faster then i could catch what it was, they closed it

        My wife does this and then asks me to fix whatever is broken. I’d be able to help if I was able to read the error!

      • CosmicTurtle0@lemmy.dbzer0.com
        link
        fedilink
        English
        arrow-up
        17
        ·
        2 days ago

        If you have a major version change, it means that old API calls will break against the new API, assuming they are accurately following semver.

        • bleistift2@sopuli.xyz
          link
          fedilink
          English
          arrow-up
          13
          ·
          2 days ago

          You’re absolutely right. In my mind “feature parity” got garbled into “backwards compatibility”.

        • Longpork3@lemmy.nz
          link
          fedilink
          arrow-up
          2
          arrow-down
          1
          ·
          2 days ago

          A translation layer could be used, no? Check api version, translate any v1 specific calls into their v2 counterparts, then submit the v2 request?

          • CosmicTurtle0@lemmy.dbzer0.com
            link
            fedilink
            English
            arrow-up
            2
            ·
            2 days ago

            This isn’t really efficient because when v2 gets updated now you have to update the translation layer as well.

            Any improvements you made in v2 would likely not translate.

            Essentially the best way is to provide users with an incentive to switch. Perhaps a new feature or more requests.