On Tue, Nov 05, 2002 at 10:24:42PM +0000, Paul Makepeace wrote: > The traditional restrictions on web usernames are things like only > alphanumerics, and usually lowercase to reduce user confusion/burden > remembering. > > I was wondering, why?
I think the restriction, at least in regards to lowercase letters, is historic. Early versions of unix supported monocased terminals. I remember a professor telling me that if you logged in and your username was allcaps, the tty would go into a compatability mode AND DISPLAY EVERYTHING IN UPPERCASE, EXCEPT FOR CAPITAL LETTERS LIKE \A AND \B WHICH WOULD APPEAR WITH A PRECEDING BACKSLASH. He used to work at AT&T and on Multics machines. So it might be true. Then again, we were undergrads, and he could have been pulling our legs, too. > They seem quite arbitrary in the modern day world. So is base 60. Yet it persists. > Why not allow (embedded) whitespace, punctuation, and so on? Characters like . cause problems because they've always been illegal. For example, chown accepts a syntax of 'chown user.group' because . is illegal. So chown breaks when you have a username like s.avery or m.thibaut. The shell has certain expectations about when and where # will be used, too. > The only thing I can see so far being a problem is if the username was > later used for an email address. But, taking that possibility out, what > other reasons are there for these restrictions? Voiding basic assumptions about shell syntax and usermode tools, mostly. Z.