Though counter-intuitive, complex passwords (special characters, numbers, difference cases) can often be easier to hack with programs than less complex seeming ones that are longer. Here's a web comic by someone who probably knows far more than you or I about information theory/security and was also a former roboticist for NASA:
http://xkcd.com/936/. This, however, has not stopped every IT department I've worked for in the last 10 years from requiring all employees use an upper case, lower case, number, and special character, AND change it every 90 days.
But the bigger threat is from something we can't control, which is companies storing your password in unencrypted formats, so that when they're hacked, no matter how good your password is, they have it.
If you're paranoid about this, use a password manager like LastPass, make your passwords for sites different and secure, and you won't have to remember them. LastPass is what a lot of the pros use and is very secure and trusted.