What is the reasoning behind the design decision to allow users to create a display name which matches another existing users exactly?
This is opposed to the common practice of enforcing unique user names, and I'd really like to learn something.
If they didn't, and people missed out on their first choice, you'd be left with trying to come up with all sorts of variations just to "be yourself".
You don't want it to be like AOL or Xbox Live (badges notwithstanding) where if you're not the first, you're
docsavage1933 while some other joker, who just happens to be in before you gets to sit around on
If someone wants to be known as, say Fletch, and another user happens to also be named Fletch, and both would rather go by that instead of changing and feeling like someone else or not truly expressive under their own name, how do you coordinate a fight to the death where the victor keeps their name?
The ability to have any display name makes me uneasy. Particularly with comments - there's no convenient way to tell who has left a comment without clicking through to the user page. Most people will just assume you are who you appear to be, particularly if you're a well known user. Also, being able to change your display name at any time often leads to discontinuities when trying to follow the thread of a comment discussion, since the
@user convention doesn't update in step.
It can be very confusing on those occasions where two users have chosen the same name. For example, on meta I have seen some perplexing discussions between identical users...
I've read the other responses, but I personally don't see the problem with unique names. Is having hundreds of users named 'joe' really any better than 'joe1', 'joe2' etc.? Do people really feel it's 'unfair' that their real name isn't available on Skype or Gmail anymore? Users seem to manage well enough on every other site/email address in existence...
There are so many programmers participating in stackoverflow it would be unfair to reserve a name for the first one. Everyone should be able to use his own name.
Have you ever noticed how people choose their e-mail addresses?
In the end there's no reason not to allow everyone to choose their name freely. With unicode support enabled one could easily create a name that looked like another anyway.
Not really an answer - but the user id is the unique part, the name is just the human (and possibly SEO) readable bit, so there's no need in the system for the name to be unique.
Obviously there are any number of "John Smith"'s or "Fred Bloggs"'s who are using their own name - which is as it should be. However, I've never come across a user who's tried to impersonate a high rep user by using their exact name (I've seen a couple of "jon_skeet"'s and even a "john skeet") but even if I did their reputation would give the game away, so I'd normally be 99% sure it's the right person.
Have you got any examples of where this has been done?
With regard to your system - if you had a "score" generated by the system and that was always displayed, it would be even rarer that the user you were trying to impersonate would have exactly the same score as you. On SO there are 4 values you'd have to match (pure rep, and nos of gold, silver and bronze badges).