As I user of many sites I find this helpful:
http://angel.net/~nic/passwdlet.html
Basic premise is this: Use a master password and the service url as salt, then hash it. Since your password is generated at the spot - not even you know what it is (nor should you care).
As far as you are concerned - you only need to remember your master password. The service gets a strong password they can store in plain text if they want.