Ask HN: Why can't webapps agree on unacceptable unsername characters?
For instance, some webapps I sign up for accept dashes, some others don't. I was wondering whether there are factors that affect or play a role in these decisions.
Sometimes I've accepted only valid base-64 characters for transport reasons - RFC 4648. Other times only email characters - RFC 5322. A couple of times I was limited to the restrictions of the underlying OS or platform. Some runtimes are ascii-centric and require extra care dealing with unicode or extended characters. IBM mainframes / gateways can have endian issues.
And sometimes it's just trivial - reusing a regex from a previous project - for example.
EDIT: wrong word in first line.
For perspective: Graphical PCs have been in common use for about two decades now and we still can't even agree on what to call the quit or preferences commands or where to put them.