Software Carpentry

This was a really worthwhile course run @Bath via Software Carpentry.

The key things that I took from this are:

  • cntl R in shell provides a search of recent-ish commands. Worth it just for this. 
  • Use documentation (triple double brackets in python) to make help files for future you and others. Provide examples. Say what the input and output is. Write documentation before you start – can help with sorting ideas and when you get interrupted. Everyone else doesn’t comment. Be the change. 🙂
  • Revision control. It really is important.
  • Testing. Without testing, how do you know that you’re getting what you think you are?
  • Automate things. Save time and mistakes.

There is a great github site for it here. A decent python tutorial was pointed to too.