I recently tried to register for an online account with the post office.
I did not succeed.
Ridiculous password requirements are a subset of a larger problem: computers make it possible to enforce ridiculous rules, and so those ridiculous rules are made. If I had to wait in line at the post office to see a clerk who would register me, how would they possibly enforce this? How much training would they have to have?
I'd hand them a word, they'd see if it fit and tell me, I would appeal if they rejected it. They'd call in someone from the back and we'd waste about 15 minutes trying to figure out what the rules actual are:
CLERK 1: Your password's got to be exactly 10 characters.
ME: I thought that meant at least 10.
CLERK 1: A little help!?!?
Clerk 2 emerges from the back
CLERK 1: Does "password need 10 characters" mean at least 10, or exactly 10?
CLERK 2: At least ten.
CLERK 1: Alright, well it doesn't matter, you didn't use a special character.
ME: I did, I used a caret.
CLERK 1: I don't think that's special.
ME: Come on, that's a special character.
CLERK 2: Not special enough.
ME: What about a pound sign?
CLERK 1: Special enough.
CLERK 2: I don't think that counts.
WOMAN IN LINE: Excuse me, I'm on my lunch break, and I just have one password to change, would —
CLERK 1: You'll be helped when it's your turn!
CLERK 2: How about a question mark?
ME: Good enough.
CLERK 1: Well then you need another character then, because a question mark is a special character, not a character.
ME: That's ridiculous, that totally—
CLERK 2: Not a character.
Computers make this kind of stupidity possible.
Let's say you're in a desert walking along in the sand when all of a sudden you look down, and you see me, who happens to be a tortoise in this story, crawling toward you. You reach down, you ask me if I want to share some files with you. I try to click the button to share, but I can't, not without your help. But you're not helping. Why is that?
I know why you greyed it out: you wanted to let me share under some circumstances, and this is not one of them. This UI pattern is very widely and very justly loathed, but a better design only helps me if the reasons why sharing is disabled are sane.
Is sharing "blah" prohibited because it belongs to another user? That's simple, just tell me. But there's a decent chance it's the fault of my employer's enterprise groupware package with 4000 business rules added on. How do you tell me that I can't share it because it contains a file that has a naming scheme that matches with a pattern that when combined with another present pattern means that it's the output of program A, which when circumstance X happens, then means that if...
Again, think of how a person behind a desk would enforce that kind of rule system. They wouldn't, that's how.
Computers enable a certain kind of product micromanagement. Any complicated whim can be enforced fully and without question. "Well then," we think, "we'll just make the user do what we want them to." This is at the root of a lot of software sadness. Please, let's think before we make someone jump through a hoop: it takes less time to implement than it does to pass through it.