With gmail and fastmail, and other email systems, you can use plus notation to keep track of who is passing around your address. When I sign up for something online, I’ll often use myaddress+domain@fastmail.fm as my address. This address simply works and I receive the wanted email. If they sell/hand over my address, then I’ll know – and there would be hell to pay.
Plus notation. It’s super handy. I also like using it for my own testing when I need to enter in a bazillion email addresses. I can use f00+1@, foo+2@, foo+3@ and they’ll all work (no, not with foo) and they’ll all appear as unique (should they?).
I like that the email spec allows the plus sign.
What I don’t like
Yet for some reason, most email “validation” code rejects an address with a plus sign. And this sucks for 2 reasons.
- It doesn’t let me do what I want to do which is to use a perfectly valid address while signing up on some other companies web site. Sometimes I simply go away. Too bad for them.
- It shows a lack of caring and understanding by the programmer.
Copy/Paste with no understanding
I’m not really sure, but I THINK what people are trying to do is help their users out. I’m pretty sure the same regular expression is copied and pasted over and over with the same error.
STOP IT.
Just validate that the user entered something like f-+5-,.o.ooo@foo.fooooo and you’re done – let them use whatever characters they want.
… the only way to reliably determine whether an address can actually receive e-mail is to send a test message. (wiki)
Oh, and another place this pops up is when people pass the email address in the querystring and then try to lookup the subscriber based on this value. Ooops! Typically the plus sign isn’t encoded and the lookup fails and the subscriber isn’t found and he isn’t happy and then he ends up blogging about it.
I use plus notation all the time, and I agree with everything in your post. However, that Tombstone reference is so awesome that I felt compelled to leave a comment. Nicely done!
Thanks Veez. Getting comments motivates me to finish some posts on my list. I’ll bang out a post this weekend.