Meme transcription:

Panel 1: Bilbo Baggins ponders, “After all… why should I care about the difference between int and String?

Panel 2: Bilbo Baggins is revealed to be an API developer. He continues, “JSON is always String, anyways…”

      • bleistift2@sopuli.xyzOP
        link
        fedilink
        English
        arrow-up
        11
        ·
        5 months ago

        Or even funnier: It gets parsed in octal, which does yield a valid zip code. Good luck finding that.

          • bleistift2@sopuli.xyzOP
            link
            fedilink
            English
            arrow-up
            3
            ·
            5 months ago

            I’m not sure if you’re getting it, so I’ll explain just in case.

            In computer science a few conventions have emerged on how numbers should be interpreted, depending on how they start:

            • decimal (the usual system with digits from 0 to 9): no prefix
            • binary (digits 0 and 1): prefix 0b, so 0b1001110
            • octal (digits 0 through 7): prefix 0, so 0116
            • hexadecimal (digits 0 through 9 and then A through E): prefix 0x, so 0x8E

            If your zip code starts with 9, it won’t be interpreted as octal. You’re fine.

            • xthexder@l.sw0.com
              link
              fedilink
              arrow-up
              6
              ·
              edit-2
              5 months ago

              Well, you’re right. I wasn’t getting it, but I’ve also never seen any piece of software that would treat a single leading zero as octal. That’s just a recipe for disaster, and it should use 0o116 to be unambiguous

              (I am a software engineer, but was assuming you meant it was hardcoded to parse as octal, not some weird auto-detect)

                • xthexder@l.sw0.com
                  link
                  fedilink
                  arrow-up
                  4
                  ·
                  edit-2
                  5 months ago

                  Interesting that strtol in C does that. I’ve always explicitly passed in base 10 or 16, but I didn’t know it would auto-detect if you passed 0. TIL.

              • Doc Avid Mornington@midwest.social
                link
                fedilink
                English
                arrow-up
                1
                ·
                5 months ago

                It’s been a long time, but I’m pretty sure C treats a leading zero as octal in source code. PHP and Node definitely do. Yes, it’s a bad convention. It’s much worse if that’s being done by a runtime function that parses user input, though. I’m pretty sure I’ve seen that somewhere in the past, but no idea where. Doesn’t seem likely to be common.