always make sure that you can get back to where you are there is nothing more frustrating than realizing that long series of changes have left you further from the goal than when you startedand having no way to get back to where you started disk space is usually plentiful use it to store old versions of your program finallyif there are many unexplained errorsyou might consider whether finding and fixing bugs one at time is even the right approach maybe you would be better off thinking about whether there is some better way to organize your program or some simpler algorithm that will be easier to implement correctly