Software Development covers everything from planning code, debugging and testing it, to distributing it to peers and users. This 2-day workshop (first run December 2017) covers the basics of all of these topics. You should know how to write and run basic programs or scripts in either Fortran, C (or C++) or Python. You will also need access to a computer where you can install or use tools such as git, gdb and valgrind. All of these are available on the SCRTP desktops.
Copies of Slides:
Day 1, morning. A rapid tour through writing code including planning, prototyping, documentation and IO.
Day 1, afternoon. An introduction to bugs you will encounter, and basic strategies for debugging and testing code.
Day 2, morning. Using tools to help you debug and test your code.
Day 2, afternoon. Using tools for distributing your code, covering git, make and basics of distribution systems.
Notes and Other Useful Content:
The notes cover everything in the slides in a little more detail, and also add some more material. If anything isn't clear from the slides, look here. Download these here.
A copy of the glossaries included in the notes is here, for use alongside the slides above.
A pdf containing the complete IEEE floating point rules is here.
Example Code and Exercises:
A copy of example code and suggestions for try-it-yourself exercises are available on the WarwickRSE Github page here. These are updated when we find issues or bugs. Use the green Clone or Download button to get a zip archive of all the files.
Slides, recordings, notes and example code are provided as-is under Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License.