4 ms·
Making software that works across cultures (and especially _as many_ cultures as Apple's software does) is difficult. I guarantee you that every single one of
by klausa 3y ago
Making software that works across cultures (and especially _as many_ cultures as Apple's software does) is difficult.
I guarantee you that every single one of those enum cases exists, because there is a language/culture where there is a specific word to describe that relationship; not "because an architect gave up".
- bhouston 3y agoI didn't know there were words for those in other languages. I guess I'd still prefer an expressive composable model for them so that I could reason about them. At least know who is related to who in which way, rather than these enums. But I guess that is outside of the scope for Apple - they just want that short name in the UX somewhere when adding a contact.
- secretsatan 3y agoLocalizing, this falls into the things you thought about x are true. This is the end result of a bunch of switches and ifs in a ui where your model, in very specific circumstances, boils down to a few words that most people understand without computer programming experience.
- mrbadguy 3y agoThe point is that you don’t need to reason about the relationship because the name, in the local language, tells you everything you need to know. Of course, if you don’t speak the language then that’s not useful but the code is written for the end user to be able to use the labels, not for the software or its developer to be able to parse the family tree :)
- NonNefarious 3y ago[dead]
- dcow 3y agoEven if it's modeled with more compositional finesse in the code, you still need a UI level label for this combination of relationships in some culture where there's an appropriate term for it, so you still end up with some label like this.