I used to do the same thing,
sopwith, and did still at my most recent job where we had to change our passwords every 3 months. But for the last several years I've just used a password manager that generates a unique long random password for me, remembers it, and auto-fills it on the web page for the site in question. There are a bunch out there - 1Password, KeepPass, and LastPass come to mind.
I use LastPass because it syncs online across all my devices and is easy to use. It also encrypts all your passwords on your computer and only passes the encrypted file over the internet. The company has been very open about how their software works, and the security reviews of it I've read all say it seems in order. It's free on on one device and I think $12/year if you want it on multiple devices. The iPhone app is easy to use.
But to answer your question more directly, having a password that includes various character types (letters, numbers, punctuation) and is over 8 or 9 characters in length greatly increases the likelihood that the password won't be vulnerable to a
dictionary attack.