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…”

  • @[email protected]
    link
    fedilink
    376 months ago

    “Hey, it appears to be int most of the time except that one time it has letters.”

    throws keyboard in trash

    • @[email protected]
      link
      fedilink
      166 months ago

      Rust has perfectly fine tools to deal with such issues, namely enums. Of course that cascades through every bit of related code and is a major pain.

      • @RustyNova
        link
        246 months ago

        Sadly it doesn’t fix the bad documentation problem. I often don’t care that a field is special and either give a string or number. This is fine.

        What is not fine, and which should sentence you to eternal punishment, is to not clearly document it.

        Don’t you love when you publish a crate, have tested it on thousands of returned objects, only for the first issue be “field is sometimes null/other type?”. You really start questioning everything about the API, and sometimes you’d rather parse it as serde::Value and call it a day.