A system I, lamentably, have to use everyday has all caps case sensitive user names. Meaning, your username is something like SMITHJ and if you try to log in with smithj or SmithJ or anything other than SMITHJ it isn’t accepted. This is most annoying because the half dozen other systems this organization uses do not have case sensitive usernames.
Is there a reason you would want a case sensitive username? The accounts are all generated for us so there is no risk of duplicate names (and that is a trivial problem to handle anyway.)
I’m just curious, but if anyone could shed light on why a system might be built this way I’d appreciate it. My only theory right now is a really lazily implemented string comparison.
Many systems, internal ones atleast, but hopefully not your average drive by website on the internet, create system users or database users or something similar as well when you’re provisioned in that system. And that native system (e.g. a user on a *nix machine) are case sensitive, so the web-app have to follow that.
Or the system might defer authentication to another service (e.g. a radius server), that for whatever reason was set to be case sensitive.
However, most of the time it is just as biscuit314 says in his comment, lazyness and non-design – but note that case insensitivity can be quite complex once you deal with non-ascii locales.