This technique is hinted about, and I don't claim it as my own creation. I think the easiest (maybe not the best) route for both devs and users is:
[submit]
does email address have a '@' and a '.' after that?
yes -> send a validation email.
no -> Hey there, [email] seems like an odd address, are you sure?
yes -> send a validation email.
no -> restart
I think this does a reasonable job of staying out of everyone's way, and it catches a large percentage of the actual typographical/user error email entries.[formatting edit]