• @[email protected]
    link
    fedilink
    112
    edit-2
    4 days ago

    As a developer, users doing dumb shit like this really makes me question why I’m trying to help make life easier for them in the first place.

    I have a shipping web application with fields that every shipment should have, for example “tracking number.” These people will prefix the value with “PRO#” or “#” as if the field isn’t already labeled correctly. I’ve fought for years with validation, sanitizing, etc. because having this junk data causes issues further down the line.

    The same goes for other similar fields (reference numbers for example); they’ll also do everything they can to fuck up the address as much as possible so that it can’t be validated (unit number first, completely mismatched city and postal code, putting the street in a field that doesn’t belong to the address, etc).

    I always try to give them the benefit of the doubt—they’re not developers. But is this something like, hard to understand for normal people? I’ve talked to them several times yet they can’t be fucked with to change their ways.

    • @[email protected]
      link
      fedilink
      524 days ago

      Cuts both ways however:

      It’s common to encounter, especially HR Portals, trying to enforce a ‘valid’ address. Trouble is it’s often an American developer and they have no idea about other countries. Here in the UK they like to insist on a 'county ’ field for postal address, despite it being over thirty years since postal addresses here even had counties (which didn’t match the actual counties but anyway). The drop down list they like to give isn’t a list of counties either, it’s an out of date list of local authorities, which were never part of anyone’s address.

      I worked at a place once where we had to use an internally developed form to order supplies. Form checked user name against company active directory (fine) but also checked that surname+first initial was at least 6 characters. No idea why and very resistant to changing it but my surname is 4 characters and a lot of Chinese ones are only 2…

      • @[email protected]
        link
        fedilink
        104 days ago

        Luckily my application only has to work in Canada and the US.

        Sometimes one of my customers will ship to Mexico, and I just don’t validate those addresses because they’re a nightmare.

        Do you know of a great validator for the UK? My validation provider offers international validation but I just don’t trust that it’s accurate and take it on a country by country basis.

        • @[email protected]
          link
          fedilink
          54 days ago

          Validators in the US aren’t great either btw. They’re always getting our address wrong or won’t validate zip+4 codes, which is supremely annoying when it’s more accurate.

        • @[email protected]
          link
          fedilink
          1
          edit-2
          3 days ago

          Sorry, only just seen this. I don’t work in this sector I am afraid. Some things that might help you:

          • There is no legal definition of a ‘valid’ address in the UK- If you post it then the Post Office will try to deliver it. If they can work it out from what is written, and they will try very hard, then that’s ‘an address’. This has been established in law.
          • There is advice on how you should write an address . This is how e.g. a bank or utility will address mail, but see above. TBH at this point you could probably put a What3Words on the envelope and it could work.
          • For most addresses in the UK you will want to correlate the postcode with the street address, as shown here. A street address is a number (or house name, or both) and a street name on one line, e.g. ‘29 Acacia Road’. Street address + Postcode is how people target e.g. a satnav to an address. A postcode generally relates to a group of addresses, but larger organisations, e.g. a hospital or council office will have a postcode just for them, e.g. ‘Buckingham Palace’. Beware that whilst postcodes don’t change, new ones are being added all the time and they aren’t sequential.
    • @[email protected]
      link
      fedilink
      English
      4
      edit-2
      3 days ago

      Dev here - this is something everybody who works with users has to come to grips with. It’s like a cartoon where teachers in their break room say, “This place would be great if it weren’t for all the students!” Truth is, we’re here for them, and that’s the job.

      • @[email protected]
        link
        fedilink
        1
        edit-2
        3 days ago

        The web application I described is my side business (that I own) so realistically I could simply choose to not be there for them.

        • @[email protected]
          link
          fedilink
          English
          23 days ago

          Well yes, I’ve been a self-employed contractor myself. You can always choose not to do what a customer wants. The risk that they’ll drop you and find somebody else is yours to take.

    • @[email protected]
      link
      fedilink
      234 days ago

      I’ll share my story about stupid customers too. In our application we have the option to require an email address or not require an email address for new users based on the customer’s preference. So naturally, we have/had a customer that set it to require an email address, but when they took information from their customers they did not actually require them to provide an email address. So for all their customers that didn’t actually provide an email address they would enter something like [email protected]. Something to satisfy the field requirement without actually being an email address. No consistency mind you.

      This worked fine until we started offering a SaaS version of our software and emails stated being sent from AWS servers. Needless to say, AWS doesn’t like it when you have an undelivered rate of like 30% for your emails. It ended up locking a pod out of sending emails for a day which ending up affecting multiple customers of ours.

      And naturally, the customer using the fake emails never said anything about it to us beforehand or indicated what type of workforce they actually wanted; which was, “we want our employers to be forced to ask for an email and if the email is required they can’t accidently forget to ask because they won’t be able to continue in the app until they enter something.” Probably a bit more paraphrased at this point since it happened years ago.

      We don’t expect all entered email addresses to be valid, but come on.

      • @[email protected]
        link
        fedilink
        English
        03 days ago

        Well, unlike postal addresses, email addresses have an easier way to validate them. OTPs.
        But that needs to be implemented on the application side

            • @[email protected]
              link
              fedilink
              13 days ago

              I meant you wouldn’t want to do that in this use case. We can’t wait to verify an email at this step. There are plenty of things that could be implemented, if we knew about this workflow.

              • @[email protected]
                link
                fedilink
                English
                03 days ago

                Yeah, in your case, the most I see could be done, is to remove the address that gives an unreachable response and add it to a list which can be referred to, right before a mail to the next record’s address is sent (to not retry duplicates).

                Or maybe use some AI mumbo-jumbo to determine availability.

                Of course, I can also think of using DNS records to precheck if the domain name exists, but I would think they would mostly be parked domains anyway, so maybe not.

                • @[email protected]
                  link
                  fedilink
                  13 days ago

                  I don’t even know what they ended up doing, not my department. They did come to us though as we were the ones sending out the emails though.

    • @[email protected]
      link
      fedilink
      English
      174 days ago

      At one job we had a digital form for new user requests. This existed for auditing purposes, but it also helped to collect all the necessary information for the change. I was always impressed at how people managed to fill it out wrong every single time.

      For example, I would get a request to update someone’s name and they would fail to include the former name or the new name or even enter their OWN name for one of the fields.

      What I learned is no system is idiot proof, no form will ever be filled out perfectly, and everything will need manual intervention at some point.

      • sepi
        cake
        link
        fedilink
        English
        24 days ago

        I often wonder how it is that we have these many people employed

    • @[email protected]
      link
      fedilink
      154 days ago

      Discussing a person at my org who struggles with the most basic thing: their password

      “I don’t know what else to tell them other than that they’re not qualified to have this job.”

      • @[email protected]
        link
        fedilink
        194 days ago

        Depends. I had a job at a hotel once that for the first 3 years we didn’t have this one piece of annoying software. Never had an issue with counting money. Never had an issue with keeping track of dirty rooms.

        Then we got this new software, and it wanted you to change your password every week to keep it secure.

        After a month I couldn’t even remember what it was this week. So we took to writing down our passwords and taping them to the monitor bezel. Now this super secure policy for password management became infinitely INSECURE, because I, an hourly part time employee, had access to the owners portal. I could log in as him, change my pay rate to $300 an hour. Which I did. I told him “I will show you why this system is the worst idea you’ve ever had.” He didn’t believe me, and 2 weeks later my part time check was higher than the salary general managers.

        He asked how I did it, I said I used his account to change my pay roll. So he stopped putting HIS password up, and only made us put our passwords up.

        So the next night, I logged into the managers account. I switched every single room as dirty. While keeping a paper list of what rooms are clean.

        Then I left for the day. When I came back the next day they said they were having issues with the software, and doing everything the old way now.

        Not exactly how I meant to accomplish the job. I figured there was going to be several more steps, after they figured out what happened. I just didn’t count on them not figuring it out. So I just went with it, and nobody had to remember passwords anymore because I caused chaos for 2 weeks.

        • @[email protected]
          link
          fedilink
          13 days ago

          I respect this a lot. We have to re-enter passwords on every device every week. Everyone hates it. You’re doing good work.

      • @[email protected]
        link
        fedilink
        English
        24 days ago

        We have a service at work that rejects my password about 75% of the time. Yesterday, didn’t work, today it works. Pretty sure it’s an active directory issue.

    • @[email protected]
      link
      fedilink
      English
      23 days ago

      people will prefix the value with “PRO#” or “#”

      Sanitizing input afterwards is a good practice and trivial for these cases. For data with a known format like here, you should always strip for example spaces in any case.

      Writing three lines of extra to allow more flexible input is easy and will make it much more user friendly. Far easier to make a software more intelligent than educate and train all users.

      • @[email protected]
        link
        fedilink
        3
        edit-2
        3 days ago

        Ha! Been there, done that. You’ll find that they’ll continue to find ways to trick the system.

        Now I get input like “*PRO”, so I have to block any string that starts with any non-alpha characters stripped + pro (case insensitive). You’d think you could just strip out all non-digits and match “pro,” but some carriers actually have letters so next you try to match any string starting with “pro” (case insensitive) after already stripping out non-alpha characters, but then you’re screwed if the string contains the letters P, R, O at all.

        It’s a cat and mouse game, but it wouldn’t have to be if people would use their brain to understand the system doesn’t need you to tell it which field you’re entering when it’s clearly labeled already—just use your brain and input the correct fucking data.

        But more to your point, you’re right. I let users input phone numbers however they damn well please and if I can’t standardize the formats and figure it out then finally I can show an error but 95% of the time that’s not the case.

    • @[email protected]
      link
      fedilink
      English
      104 days ago

      I bet it’s something like the owner doesn’t want to give the shift manager login privileges and just calls them when the price changes.

      The manager says “ok but the tv doesn’t show that”. The owner (from a beach in hawaii) says “I’ll do it”.

      They never do it.

      So the manager has to do something.

    • @[email protected]
      link
      fedilink
      English
      23 days ago

      fuck up the address as much as possible so that it can’t be validated (unit number first

      Officially the unit number should be first separated with a dash from the street number here in Canada.

    • @[email protected]
      link
      fedilink
      English
      54 days ago

      They probably paid someone to make the menu graphics, and then didn’t want to pay more to have them altered.

      • @[email protected]
        link
        fedilink
        54 days ago

        I rolled my own. I love but hate it, so many hacks to make quoting work. My goal is that you enter the information and it figures out the annoying shit itself (overlength fees, residential/hospital, etc).

        There’s one carrier where I have to look up if it’s an Amazon warehouse and if so do a ton of crazy math to calculate the fee (since these 90s SOAP APIs don’t calculate shit for you).

    • @RamblingPanda
      link
      44 days ago

      Me, making an application idiot proof.

      Customer, hiring an even dumber idiot, because they can save a buck this way.

    • @[email protected]
      link
      fedilink
      44 days ago

      I built a fairly simple web form for my department that filtered into Google Sheets, just beyond what Google Forms could accomplish. I couldn’t believe some of the ways they were able to break it.

    • 👍Maximum Derek👍
      link
      fedilink
      English
      44 days ago

      My experience is that what we really do is make stupid easier, but hopefully also make it cost (us) less.