8 ms·
We already have an abstraction for names: a text field. Trying to be more clever than that will break for someones name.
by dkersten 7y ago
We already have an abstraction for names: a text field. Trying to be more clever than that will break for someones name.
- hirsin 7y agoWhich is great until the client asks for a friendly name (given name) identifier. GitHub uses name, we use first/last name. So we just shove the GitHub name in the first name spot and ask people to organize what looks right. Our partners suggested string.split(' '), which produced interesting results against the sample list of github users.
- clarry 7y agoA lot of software would be much better without stupid clients asking for the wrong things.
- hirsin 7y agoEh, I understand it. They want to put some name in the identity control in the header. Putting the full name in is guaranteed to go wrong. We might start asking for a nickname for that purpose.
- gbear605 7y agoWhy is the full name guaranteed to go wrong? A better assumption is that there is no reasonable nickname and you have to use their full name.
- dkersten 7y agoUse two fields: name and display name. Anything else will break for someone. In most cases where something asks for my name its really not even necessary and certainly not necessary to split it into first/last/display/friendly etc.
- kd5bjo 7y agoThis is not sufficient if you’re going to localize to languages other than English. In some languages, proper names get declined like other nouns and thus change spelling in different contexts.
- deleted 7y ago[deleted]
- detaro 7y agoAre there examples where splitting it in First/Last name (or any other split) would help with that? It seems like that would always either be a problem or something to design around while localizing.
- kd5bjo 7y agoIt’s fundamentally language specific, so any comprehensive solution is going to need to interface with the localization system. Really, names should be keyed by (user, language, tag) triples, where the localization defines the acceptable tags based on language requirements. For example, a single person may need their name stored as: en:disp Eric is:disp:nf Eiríkur is:disp:þf Eirík is:disp:þgf Eiríki is:disp:ef Eiríks Designing a UI to collect this information is left as an exercise for the reader.
- dkersten 7y agoSince asking a user to enter every possible variant is unwieldy and without doing so, the problem is unsolvable, I’ll stick with my original suggestion of using a single field. Yes, some names will break, but far fewer than if first and last names are required.
- a-priori 7y agoYou're assuming that you're 'friendly' enough with your users that they want you to use their given name.
- tripzilch 7y agoOh yeah that touches a nerve. I hate it when I have filled in my name and email somewhere, maybe I forgot doing it, and I receive a newsletter, which opens with and greets me with just my first name. No. Just because I signed up for your mailinglist doesn't mean we're on a first name basis! I hardly even remember your business exists, do you remember me? Anything else about me except my email and my full name, from which you deduced my first name? Then let's not pretend we're buddies. This of course depends on how "friendly" I'm willing to be with said business. Which differs if it's an Etsy store, ordering food online, my bank, insurance, etc. I especially hate it when the news letter is in fact 99% ads and promo babble, but has this 1% of useful info that I want to be kept up to date on. We're not close, I'm letting you spam my inbox, call me "your grace" or something. Can you actually go wrong with just using someone's full name, and erring on the side of being a tad too formal? Is this just a problem with marketing companies that want to "connect" and become "buddies"?
- naniwaduni 7y agoThis already breaks names which inflect.
- andai 7y agoWhat’s this? A name that changes when you are talking to someone directly? In some Slavic languages this happens.
- thaumasiotes 7y agoUsually the name would change according to the full rules of noun inflection in whatever language. In Latin, a noun has 6 cases, of which vocative (indicating direct address to the noun) is one.
- thefringthing 7y agoIrish has a vocative case that can modify names, and is an official language of a UN member state.
- dkersten 7y agoWhich isn’t really a problem you can solve. If names change in the context that they’re used, it will always be broken, so why break more names by trying to be clever?
- sargram01 7y agoActually I think it should be ok, because you’d enter the name in the nomative case and then when you write it on the screen you’d declinate it based on the language you’re displaying it in, which would be the same for every name regardless of its origin.
- Piskvorrr 7y agoTried that once. Horrible, terrible, no good idea. (The only rule you can be sure of is "there are countless exceptions, and exceptions from the exceptions", everything else is a minefield in a quicksand) Asking for "how should we address you" is far easier, even if a few users fill in "Your Galactic Imperial Majesty".