Many scientists spend time developing and using software, however many are not taught how to do this efficiently.
Williams et al. (2012) have compiled a comprehensive list of best practice advice for scientific computing, which can be summarised into 10 points that should be considered when programming.
Future-proofing your code will mean that your colleagues, referees and your future self will all be able to understand, reuse, and edit your programs. Following these best practice guidelines ensure that you protect your data from editing mistakes and major modifications that could severely alter your code.