Have you ever had someone mispronounce your name? It doesn’t happen to me often because I have a simple enough name, but it does bug me when it happens. Names don’t always follow the normal pronunciation rules so it’s not really the fault of the speaker. Even so, it doesn’t leave a good impression.
A professional web site needs to “pronounce” names properly too. Most people in the world have characters in their name that are outside the traditional English character set. It will surely leave a bad impression on a new user should you display their name incorrectly. If you can’t do that right, what other problems might they find after investing time in your web site? A well seasoned user with a non-English name knows that there must be a simple solution to this problem because most other sites get it right.
When TCG developed the NITRC website we made sure that it used the Unicode character standard for our user’s names and other personal information. Since NITRC is used by neuroscience researchers from all over the world, this was extremely important to get right. Looking through the user list, I see lots of European names with a few accented vowels. There are also a number of middle and far Eastern names written with characters that my poor American brain can’t really see correctly. We did get a lot of help getting these names right. The support is built into the project’s database, the programming language used on the site, and the Open Source libraries that we leverage to keep costs down for our clients.
From time to time we do still run into technical challenges keeping everyone’s data looking good. Recently we integrated a new Open Source tool called XNAT into the NITRC site. XNAT also supported Unicode characters which, of course, is great. Unfortunately, the protocols we used to share data between the two systems corrupted names as they were loaded into the new module. It’s not that the protocols didn’t support Unicode, it’s just that they didn’t do it automagically.
I’ve worked with a lot of great testers here at TCG. If you haven’t been lucky enough to see experienced test engineers in action, I’ll let you in on one of their secrets: Use crazy text everywhere you are allowed to type. It is especially important to make sure that you test with any characters that have special meaning to the underlying technology. Quotes, semi-colons, asterisks, question marks, and commas can wreck havoc on an otherwise solid system. Is the site asking you to enter your age? Try typing “ ‘;28^&*^3hjh” and see what happens. After this experience I’ve learned another trick: Whenever I’m testing, my name will be Albért.
Thankfully, our internal unit testing found this problem long before the first iteration of the site was even shown to our formal tester. What exactly went wrong and how we got it working is the topic for another post that will be much more technical. What is important is that I put a new tool in my testing arsenal.