In all my web-projects I've made 1 unique nickname for 1 user (i.e. in DB table User has primary key ID and unique varchar 'nickname' or 'login' or whatever else).
At Stackoverflow we can see just the opposite solution and many users have the same nickname.
Futhermore, user can change his nickname here whenever he wants.
I wonder what are the pros and cons of this approach?
Actually I see some negative moments and only 1 positive.
Pros:
- During registration user shouln't 'bruteforce' login field to find available nickname (and it can greatly simplify registration process).. but that's all
Cons:
- you can't be absolutely sure who is the author of the question, answer or comment
- somebody can set all his info (including avatar) just the same as another user did and tell something like from that user's name
- it's a source of potential bugs because when I change my nickname what should be happend with all my previous publications?
What can you add? What 'side effects' can we see here? Maybe, lots of users use their real names for registration (but it also often happens at other resources)?
Maybe this 'strategy' is preferable for projects with only audience over millions? What kind of projects should use this approach? Blogs? Projects like YouTube? Social networks? Educational resources?
All your considerations are welcome.