My program doesn't have bugs. It just develops random features.
Legacy:In Case Of Emergency
Harddisks crash, buildings catch fire, your girl-/boyfriend dumps you. These things happen to everybody, be prepared for it. You probably can't prevent these things (but hey, don't light candles in bed and be nice to your girlfriend), but with some sensible precautions your mod project need not die when they happen.
Of course this is all about backups. Always make sure you do regular backups of your work, but most important make sure you have at least one backup on a off-site location.
You have to do it regularly because you don't want to be set back a whole month. Often there is a solution available that gives you the ability to do incremental backups. This way you can keep smaller backups, but make sure you also do a complete backup once in a while because there's nothing more anoying that restoring tons of incremental backups.
When your are working with a team you usually use a version control system. A nice side effect of this is that you will always have a backup of the work on a different location. Hint: Even if you are a sole developer a version control system is very useful.
There is just one thing people sometimes forget and that is that you only have the current files on all work stations. You don't have any control information or previous version. So also make sure you create backups of the the data on the version control server and ship it to a off-site location.
This includes normal instructions, story, etc. You can keep your documentation in a CVS too, but this has a little downside that discussion about a document can't be included (it's not nice). A Wiki system might be the solution, it will also keep a record of changes, and some wiki systems can't backed-up just like a Version Control system since they use plain text files.
Forums are a nice place for discussions, but there's a major downside. It's hard to keep backups because you usually don't administer the system running the forum. Also most forums use a database, and databases are not really friendly when it comes to backing up. It lacks the posibility for incremental backups.
Mailing lists are very backup friendly, everybody receives a copy of the message and of course the mailing list server keeps an archive (usually).
There's not much use in creating backups and storing them at the same location as where the official data is. You have to ship your backups to an off-site location.
So once in a while burn your backups on a CD-ROM and and when you visit your parents stash them somewhere on their attic so they won't "clean" it up (near your old porn stash is usualy a good location).
An other very important thing is the security of your system. Even though you are developing something open source you want to have you workstations and backup/version control servers to be secure.
Before you know it somebody hacked his/her way into your system and could change/steal your developments. So visit the OS vendor's online update site at least weekly to check if security patches have been released. When a patch has been released it usually means that an exploit has been availble for a couple of days (with MS Windows often a couple of weeks). It's usualy best to turn on any automatic update features, or at least configure them to automatically download updates.
Another thing is to install a virus scanner on your MS Windows systems. And install or turn on the Wikipedia:firewall on your system. But even better than turning on a firewall is to disable all useless services running on your system. The Microsoft Windows NT product line (NT, 2000, XP, ...) come with a lot of useless services enabled. Usually you can disable most of them. If you don't know what a services does and you can't find much information about it just disable it and check if everything is still working as it should (the good old trial and error). See Securing Windows XP and Disabling Unnecessary Proceses. for XP machines.
When you already have a backend network it's a good idea to install a secure router. A secure router can be very easy to install. All you need it an old PC (pentium will do fine) with two quality network interface cards (3com or intel NICs advised) and install NetBSD on that old machine. You don't need a state of the art machine for a simple router. NetBSD is a very secure operating system (hasn't had a remote root exploit in quite some years), it might take some time to get it installed correctly, but there's usualy enough information and support available. Because you have a router between the internet and your backend network your backend network will automatically be secure from external attacks because they first have to go through your router to reach your network.
It's better to use an old PC with NetBSD (or any other small UNIX like OS will do) than to use a hardware router. Simply because the cost of a PC router is pretty low, and you will have total freedom over it's features and settings.
Links to Backup Solutions
El Muerte TDS: with all these things breaking down (1, 2) I think it's time the UWiki covered something about emergency protection. So please help to finish this document and add links to backup solutions, or subpages for more detailes on a custom solution.