See: http://codahale.com/how-to-safely-store-a-password/ for details.
Uh? Why? It is a useful thing to do. More than that, it is necessary (but not sufficient). There's a reason why all of pbkdf2, bcrypt and scrypt generate salts if you leave them to their own devices.
> See: http://codahale.com/how-to-safely-store-a-password/ for details.
You completely misunderstand the article.
If you use a common hash with no salt you can bet your britches the attacker will use rainbow tables!
It's also worth pointing out that rainbow tables aren't the only attack you are exposed to if you don't salt your passwords - it also prevents finding collisions, and massively slows down forward hashing attacks.
Which is why you need to not use a hashing algorithm designed to be fast, like SHA, but one designed to be slow, like bcrypt.
pwhash = md5("this is my salt" + password)