Meme transcription: Panel 1. Two images of JSON, one is the empty object, one is an object in which the key name
maps to the value null
. Caption: “Corporate needs you to find the difference between this picture and this picture”
Panel 2. The Java backend dev answers, “They’re the same picture.”
Just what every programming language needs, not one, but two types of null! Because nobody ever said one type was difficult enough.
If I see any of you make this distinction matter for anything other than “PUT vs. PATCH” semantics I’m going to be very angry.
I do this constantly.
undefined
: not retrieved yet.null
: Error when retrieving. Makes it easy to reason about what the current state of the data is without the need for additional status flags.
Thanks for the transcription!
Surely Java can tell the difference between a key with a null value and the absence of that key, no?
I mean, you can set up your deserialization to handle nulls in different ways, but a string to object dictionary would capture this, right?
Sure, Java can tell the difference. But that doesn’t mean that the guy writing the API cares whether or not he adds a key to the dictionary before yeeting it to the client.