Backup, backup, backup! I know it's boring, and sometimes tedious, but it's something you must do. There's one plugin that I've been using for a while now on all of my WordPress sites to take care of backups. The plugin is called BackWPup and is free in the WordPress Plugin Directory. You can find the page at http://wordpress.org/plugins/backwpup/.
BackWPup is very powerful. It takes care of backing up individual files, such as themes and plugin files, and also creates backups of your database.
The thing that I really, really like about BackWPup is that it integrates with remote storage environments, such as Dropbox, Amazon S3, and regular FTP. I've got all my WordPress sites set up to do weekly backups of files and the database, and then send that backup file to a folder in my Dropbox account. It works awesomely well, and is a really valuable tool. In the following screenshot you can see how to create a new BackWPup job, telling it what to include in the backup: