News for hackers. Stuff that matters.
Re:CNLabelContactRelation​YoungerCousin&... by ridaj on Thursday July 04, 2019 @12:55AM (#20351656)
Exactly... Could it not just have been named

    CNContactLabelRelation表姐
?
Re:CNLabelContactRelation​YoungerCousin&... by simias on Thursday July 04, 2019 @03:54AM (#20352506)
In case you're serious I'd have to rely on IDE completion or copy/paste to input this, not being familiar with chinese input methods. It would also make it trickier to compare identifiers and make sure that it makes sense.

I think it makes more sense to keep all identifiers in English or alternatively provide completely localized versions of the API in other languages, going halfway is just going to confuse everybody. Remember for instance the confusion created by PHP using hebrew in the symbol for the '::' operator: https://stackoverflow.com/questions/592322/php-expects-t-paa...

Re:CNLabelContactRelation​YoungerCousin&... by ridaj on Thursday July 04, 2019 @04:44AM (#20352774)
I am genuinely curious why not. Interesting to know that history about php!

A middle ground might have been to use a transliteration such as CNContactLabelRelationBiaoJie.

Your point about input makes sense in that it's technically possible to type the English identifier without Chinese input methods, although I would be surprised if anybody typed that long-ass English identifier without IDE completion or copy-paste either!

The point about being able to more easily compare, I disagree with - the long identifiers are hard to check.

IMO if an API exposes an uncommonly-known but well-defined concept, I think it's acceptable, and better, to ask users of the API to learn the concept before use rather than paraphrase it.

It better matches what developers are likely going to try to do: if anyone is ever going to write a program that has to care about this case, I'm pretty sure the spec isn't going to be something like "if the contact is the user's elder female cousin who is either the user's mother's sibling's daughter or the user's father's sister's daughter..." - it's likely going to say, if not in Chinese, "if the contact is the user's 'biaojie'..."

There is good precedent for this kind of preference for expressing concepts that aren't broadly familiar in technical APIs. You'll get some symbols containing words like AffineTransform or CMYK in it, and probably many programmers wouldn't know what they stand for either until they need to learn what they are, but that's ok and better than dumbing down the API to something like RotationOrTranslationOrResizingOrCombinationThereOf or PrimarySubtractiveColorSystem.

Re:CNLabelContactRelation​YoungerCousin&... by progval on Thursday July 04, 2019 @04:51AM (#20352810)
> In case you're serious I'd have to rely on IDE completion or copy/paste to input this, not being familiar with chinese input methods. It would also make it trickier to compare identifiers and make sure that it makes sense.

I'm not sure it's easier with the super-large English name

Re:CNLabelContactRelation​YoungerCousin&... by eridius on Thursday July 04, 2019 @01:17AM (#20351773)
Is Chinese the only language with this relationship?

Also, identifiers in Apple frameworks are always ASCII.

Re:CNLabelContactRelation​YoungerCousin&... by umanwizard on Thursday July 04, 2019 @01:36AM (#20351856)
They could have used Pinyin. Even people who don’t speak Chinese and have to look it up would have an easier time understanding it than trying to parse this identifier.
Re:CNLabelContactRelation​YoungerCousin&... by SatvikBeri on Thursday July 04, 2019 @01:48AM (#20351904)
When I put this in Google Translate, it auto-detects Japanese and gives me "outer cover." When I specify Chinese, it just says "cousin." So it's not trivial to look up.
Re:CNLabelContactRelation​YoungerCousin&... by umanwizard on Thursday July 04, 2019 @01:50AM (#20351909)
Presumably you would google "CNBiaoJie" and find Apple documentation explaining the concept.

(As an aside, Google Translate is a terrible way to look up the definitions of specific words. It is not a Chinese-English dictionary and doesn't try to be. Wiktionary would be a much better free option.)

Re:CNLabelContactRelation​YoungerCousin&... by kevingadd on Thursday July 04, 2019 @01:58AM (#20351932)
Google translate and Bing translate are extremely unreliable for ideographic languages.
Re:CNLabelContactRelation​YoungerCousin&... by simias on Thursday July 04, 2019 @03:56AM (#20352519)
And then every time you re-read the code you have to look it up to understand 1/ what the hell is even this and 2/ is it the right one at the right place.
Re:CNLabelContactRelation​YoungerCousin&... by umanwizard on Thursday July 04, 2019 @10:09AM (#20354766)
Yes, which I think is easier than having to parse and understand this identifier every time you see it.

Especially since after a few times you will remember what it means and not have to look it up anymore. There's a good reason we use jargon for complicated concepts rather than re-explaining them every time they're used. "while" is a lot easier to understand once its meaning has been explained to you than "EveryTimeWeGetHereCheckIfThisConditionIsTrueAndExecuteThisCodeBlockAndJumpBackHereIfSo".

Re:CNLabelContactRelation​YoungerCousin&... by ridaj on Thursday July 04, 2019 @05:59AM (#20353116)
Whereas with this English symbol that might not fit on a screen, there are none of those problems?! If the concept is foreign to you to begin with, but you have to care about it for some reason, you're going to have a bad time with either 1 or 2 no matter what the symbol is. (Though I agree that transliterating to BiaoJie would make it easier.)
Re:CNLabelContactRelation​YoungerCousin&... by ridaj on Thursday July 04, 2019 @01:47AM (#20351899)
I'm not sure it's the only culture having this specific relationship, but it's perhaps better to make sense to some than to none?

A Chinese person, an Apple engineer and a HN reader walk into a bikeshed...