Prior to example of adding ordinar user (a User for Daily Use) Hanbook must provide requirements to username's string. Something like (excuse me my English): Check is performed by utiliries from shadow package, but it doesn't sets these limitation, it just fixes current state. User/group names must match [a-z_][a-z0-9_-]*[$] User names are limited by whatever utmp can handle (USER_NAME_MAX_LENGTH) man 5 utmp: #define UT_NAMESIZE 32 Ideally it will be complete this section with refernce to official doc or at least article in official wiki, with more detailed description. Why such limitation: Why forbidden '-' as first symbol is rather clear. But why not number? Why forbidden uppercase letters (unlike FreeBSD)? Why forbidden dot? Why forbidden national alphabets letters?
getting into the hows and whys of *nix convention, and the details of particular system tools, is outside the scope of the handbook. really, if the user add tool rejects your username, it's pretty obvious to me that you just choose another one.
I agree that describing how and why in Handbook is an overhead. But short reverence about format of valid username (what symbols it could contain and how long it could be) are needed. Because many (or even most) tried usernames may don't fit these requirements.