What are your passwords like?
If you use one password for many things, or even just use a dictionary password, it may be easy to guess.
Here's what I do:
Use a trusted 'password safe' type program. On the Mac, 1Password is very good, but not open source and not free. I use KeePass, which is free and open source, for Windows, Mac and Linux (Mac and Linux use KeepPassX).
This program is a simple database, storing all your passwords for all the websites and programs you use (or anything else you want to keep secret, perhaps serial numbers or bank card details). You lock this program file with a password, which is now the only one you have to remember (so make it very strong, not easy to guess). The program locks all your passwords up very securely, so you can carry it round on a USB flash stick if you want, or just keep it on your computer.
If you need a password, you use the program to unlock all your passwords; it's that simple. The program will also generate passwords for you, which are very secure.
For example, all my passwords are something like "v9v ^%b*^(*R%t8^&RC&". I have no idea what any of my passwords are; I just know the master one. And it's trivial to use different passwords for different systems, so if they somehow guess my email password, they won't have my Paypal password.
Even if you do none of this, there's a very quick idea to take in: think of passphrases, not passwords. If the service (like your email client, or PayPal) allows, use something like "my dad's friend has a purple cat". This is vastly more difficult to crack than "stMark294", and not really any harder to remember. Your brain is also very good at associating weird short stories or phrases like this with particular items. (But the password safe system is even better.)