This Clay Shirky essay states the problem with names in a really nice way (it's an independent reinvention of the ideas in this one but in clearer language)
Mark S Miller has taken the shape of the problem and shown that it's the shape of the solution! Here's how names should really be handled.
At first I thought "who would go to the effort of writing <pn>Alison</pn> all the time?" But the answer is, of course "anyone who can be bothered to write <lj user="purplerabbits">" - ie, it seems, nearly everyone who uses LJ.
This is really neat. And it's just become an essential part of my ideas on how LJ can become decentralised.
I can imagine the user interface already. You see a story that says
went to the cinema with ?Connor, who insisted we watch Spiderman.Click on the "?Connor" and you get a little interface that tells you about the name in terms of names you already know.
* This user prefers the name Connor, but you already have a user of that name in the database (edit)Click on the appropriate "accept", and that name will be subsituted in that and all future appearances:
* Grant knows ?Connor as Daniel (accept)
* David knows ?Connor as Gingernuts Johnson (accept)
* Enter your own choice here _______ (accept)
[ ] Publish choice
went to the cinema with Gingernuts Johnson, who insisted we watch Spiderman.(U: replaced "?Ciaran" with "?Connor")
Update: A burst of nostalgia for the day we lost our naming innocence, just over eight years ago (and prescient words a few months earlier)