• Fargeol
    link
    fedilink
    128
    edit-2
    7 days ago

    NaN minutes later, a truck arrives in the alley, its license plate reads “undefined”. Someone gets out of the vehicle
    “I have something for you”
    He gives you a package. You open it. It’s an [object Object]

      • lad
        link
        fedilink
        English
        66 days ago

        Albeit true, I want to note that some languages encourage such practices way more than others do. Also, when you’ve got a hammer everything looks like a string nail.

        • @blackn1ght@feddit.uk
          link
          fedilink
          16 days ago

          In my mind a simple unit test should have caught this. Mock out the call to the service that sends the message and verify that it’s been called with the correct message, and cover the possible failure scenarios. That said I hate loosely typed languages lol.

      • @copd@lemmy.world
        link
        fedilink
        56 days ago

        besides NaN actually being a number, this could completely and easily be avoided with typescript.

        • @rooroo@feddit.org
          link
          fedilink
          56 days ago

          Naaah. Good programmers know how to use as any as any to make this work in typescript as well.

    • JackbyDev
      link
      fedilink
      English
      46 days ago

      I promise you, people make mistakes in every language lol.

  • anguo
    link
    fedilink
    English
    187 days ago

    I kid you not, opening this post on piefed.ca gave me “Internal Server Error” the first time.

  • @mumblerfish@lemmy.world
    link
    fedilink
    197 days ago

    I got one of those too. I called the customer service to get another path home because of disturbances, and they just have robot answering. The robot started halfway through the call just reading pure json at me, and then said “to get this information as a message press 1” or something. This is what I got:

    Here is your journey from undefined to undefined: BUSS 506 towards Karolinska sjukhuset 09:36 from undefined 10:18 arrived at undefined. Link to your journey.

    • JackbyDev
      link
      fedilink
      English
      16 days ago

      If you want those on separate lines you need to add two spaces on the end of each line!

  • @glorkon@lemmy.world
    link
    fedilink
    16
    edit-2
    7 days ago

    I’m an old fuck and I started to code in the late 80s. Fast forward 30 years, I once had to work at a WeWork. One day, directly outside of my small office space, I swear to god, a fucking hipster kid with a Macbook under his arm practiced skateboard moves. That was the exact moment I started hating working in IT. It’s also what I think every Javascript coder looks and acts like.

        • @squaresinger@lemmy.world
          link
          fedilink
          26 days ago

          Sure, but the main issue here is that JS doesn’t only auto cast to more generic but in both directions.

          Maybe a better example is this:

          "a" + 1 -> "a1"
          "a" - 1 -> NaN
          

          With + it casts to the more generic string type and then executes the overloaded + as a string concatenation.

          But with - it doesn’t throw an exception (e.g. something like “Method not implemented”), but instead casts to the more specific number type, and “a” becomes a NaN, and NaN - 1 becomes NaN as well.

          There’s no situation where "a" - "b" makes any sense or could be regarded as intentional, so it should just throw an error. String minus number also only makes sense in very specific cases (specifically, the string being a number), so also here I’d expect an error.

          If the programmer really wants to subtract one number from another and one or both of them are of type string, then the programmer should convert to number manually, e.g. using parseInt("1") - parseInt("2").

  • I’m no acupuncturist, but I’m pretty sure that it’s SUPPOSED to say “naan minutes”, which is time spent enjoying delicious Indian flatbread.

    I guess you just eat your naan and then your ride arrives to ask you if you have any leftovers? 🤷