The approach I use is to combine a master password (so only one password to remember) with a site specific name (e.g. the domain name or site title) using some difficult to reverse combining / hashing algorithm.
This way, even if one password is leaked, it should be impossible (or at least very hard) to calculate the master password.
This way, even if one password is leaked, it should be impossible (or at least very hard) to calculate the master password.
I just uploaded a simple demo of this: http://onewheeledbicycle.com/junk/passwords/index.html