O, be some other domain name! What’s in a domain name? that which we call a domain By any other ip address would resolve as sweet?
With apologies to Shakespeare, I’d like to talk very briefly about a very large and important topic: domain names. The other day, I received the following question from CK:
From a usability standpoint, what’s the right thing to do?
An excellent question, made even better when equipped with clarifying examples. But before I answer this question, let’s quickly first review what a domain name is and what it does … in a plain English way sure to ostracize me from those of you who read pure geek.
A domain name is a human-readable way of remembering an 188.8.131.52. In other words, when I type in the text “healyourchurchwebsite.com” into the address of my browser, a message is sent to a server that returns the numeric IP address … which then goes through a series of other network requests and resolutions until my glorious web site appears on your computer screen.
But CK’s question was, what is more usable:
Like any good church-goer, let’s first see what St. Nielsen has to say from the Book of Useit.com:
“do not use MiXeD case text in URLs since people can’t remember the difference between upper-case and lower-case characters: all-lowercase URLs are usually preferred (domain names are less of a problem since they are case-insensitive – usability would increase if webservers would ignore case in resolving URLs)”
I guess the above makes me a heretic, or more accurately, a half-heretic. Let me explain.
Unlike Dr. Nielsen, who has deep training and experience in all things usability, I come out of a computer programming background; a world in which case sensitivity and source code maintainability dominate naming conventions. For example, when creating an integer variable that represents the age of a dog, I might declare it as iAgeOfDog instead of iageofdog, the former being more readable than the latter, especially when awash in a sea of cryptic code.
But unlike like many computer languages, domain names are not case sensitive; good thing too. If you thought cybersquatting is a problem now, imagine the legal havoc reaped upon the Internet if RedlandBaptist.org resolved to a different IP address than redlandbaptist.org.
Heresy or Common Sense?
So which way is more usable? I say both. Why? Consider how Jesse James Garrett concludes his article entitled ‘User-Centered URL Design‘:
“Some might argue that, in a perfect world, URLs would be used only by machines, hidden entirely from users. But in our imperfect world, users have come to depend on URLs to communicate key information as they navigate through the Web. Systems that don’t take this user behavior into account pull the rug out from under users who have come to rely on readable URLs. Recognizing that people really do read URLs – and, in turn, making those URLs easy for people to read – is really just an extension of the user-centered philosophy of design. It’s all about creating systems that work the way people work, rather than the way technology works.”
Basically, what I interpret this to mean is that if at all possible, make domain names work for both parties … that is the computer and the human. For example, though short URLs are usually better, there are times when a long one works, e.g. HealYourChurchWebSite.com. Yet because of its length, and because of my experience as a computer programmer, I know that mixing the case makes the URL easier for the human to identify and read.
That said, I think it is a good practice to make sure the underlying HTML rendering remains lower case. Yes, it is code, but it is not a variable name but a constant … and since most browsers and servers are written in lower level languages such as C, it is better to not confuse them conventions employed to facilitate the frailties of the human. In other words, doing it this way may also save you some grief when dealing with older browser and domain name servers (DNS) that may still be mixed-case impaired (in other words, trust me on this one).
So CK, to make a long answer short, here is how I would render a short URL:
Here is how I would render a long URL:
One other thing, I’ve used the term URL synonymously with domain name which is okay, but may cause you some confusion when you first come up against the term URI — which describes an Internet document such as this particular article. For more information on how to effectively use URI’s, especially where mixed case issues are involved, I suggest studying the articles “How to Succeed With URLs” and “Designing URLs for Usability” … yeah, see what I mean by human frailty?
Finally, since I’m bucking Nielsen on this one I suspect one or three of you might have an opinion one way or the other. Don’t be shy, leave a love note … just make sure you present your case in a way where we can all learn from it. Meanwhile, I’m going to see if I can purchase some indulgences from Father Flanders before it gets to hot here.