Coding Horror has a message that I'm pretty sure I've put up more than once. Sorry to hear about that, hope you get things back soon.
If you can help Jeff out check out his @codinghorror or hit up his recovery thread at superuser.com.
As a note to everyone, I'm trying to establish the @ufies twitter account as an alternative notification method for people if the server goes down or is having issues that I can't communicate through it. Please follow!
Get a cheap Linux virtual machine from a provider and do a disk image once a month, copy the databases every day and possibly set up replication and sync things like mail every hour.
I use Windows servers mostly but also have a couple of cheap Linux systems specifically as targets for image based backups too. The Linux system that is used in production backs up to a Windows box. I also back up from production servers to a cheap machine at home with a bunch of 1TB disks!
When something bad does happen hopefully that'll mean I can just restore the disk image(s) then shift across the latest versions of things!
It also means I can restore the disk image to a VM for testing stuff occasionally, that has come in handy :).