It's hard to have an unusual name anywhere really. Whether it's from unusual characters, or a name that doesn't fit cultural expectations.
I wrote Alphanym to help encourage an interface pattern which preserves the natural diversity found in people's names, and to hopefully help mitigate technical issues like these.
Is this 'just' the front end part (in quotes because it's such a hairy issue, I imagine you have lots and lots of 'special case' code)? How do you suggest people structure their databases when storing this information? Does your product help with the full 'processing chain' of working with names?
Alphanym is a full-stack solution, and can help anywhere you need to use people's names.
For storing names, I'd suggest two very long Unicode string fields. At least 1024 characters or greater (some names actually get that long). One field being a full name field, the other being a "betanym" field (the name used anywhere you'd use a persons "first name" normally). Use the full name in billing/idiomatic contexts, and the betanym when addressing customers directly (or if you need a shorter name for UI reasons).
The full-stack UI is there to encourage user feedback, because names are surprisingly ambiguous. Though in more lax contexts like ML/NER, direct API calls without feedback may be adequate.
>Is this 'just' the front end part (in quotes because it's such a hairy issue, I imagine you have lots and lots of 'special case' code)?
There's surprisingly little special case code on the backend, because it primarily relies on ML to generate name interpretations. So most of the special casing is embedded in the ML models. However I am introducing more special case code to refine the ML models with a cleaner dataset.
Using names is ridiculously complex in the general case, seeing as it's a proper subset of NLP. So the API relies on user feedback, which is stored by Alphanym so it can offer more accurate interpretations in subsequent requests. The `name-uncertain` field allows clients to bypass the confirmation if the API has encountered the name before, so at no point does the system assume anyone's name. Yet most of the time people will only have to fill out a single form field.
Strange, know your OS/Browser combo? I've had issues with it before in areas with poor connectivity, since it requires making API calls off to Google (after the page has loaded). The button should start the whole reCAPTCHA flow, but I've noticed it's not 100%.
Android 5.0.1, Brave browser. I tried disabling the tracking protection, but it still did nothing. Connectivity shouldn't be a problem, because I'm using my WiFi right now.
Edit: nevermind, it works now. Maybe I was too impatient before.
I wrote Alphanym to help encourage an interface pattern which preserves the natural diversity found in people's names, and to hopefully help mitigate technical issues like these.
https://www.alphanym.com/demo