- snip -
How often do we back up the wallet? I've just been doing it after each transaction, is that enough?
The backup contains the next 100 addresses that you will use. The wallet uses one of those 100 addresses every time you click the "New Address" button in the "Receive Coins" section. In addition the wallet uses one of those 100 addresses every time you create a transaction with Bitcoin-Qt to send any bitcoins anywhere.
As long as you have at least one good backup that was created within the last 100 addresses used, you'll be able to recover all the bitcoins in your entire wallet from the backup.
How often this needs to be depends on how often you create new addresses, and how often you send bitcoins.
Once a month is enough for many people. Some people should be doing it every week. If you play a lot of SatoshiDice, you might want to be backing up every day (or more often).
It's a good idea to be backing up more often than necessary, that way you have multiple good backups in case a backup itself is damaged, lost, or unusable.