Lecturer: Dr Philip Blakely
GNU/Linux is the operating system of choice in most scientific research environments. In this course we cover the following topics:
- Basics of Linux command-line usage, file-handling, and shell-scripting.
- Compilation, libraries, and linking, and Makefiles
- Version Control – Git
- Computational complexity and data structures
This course is a pre-requisite for all courses on the MPhil, due to the importance of Linux in Scientific Computing.
Students should leave the course knowing:
- How to navigate a Linux system and file/directory structure.
- How to compile simple and complex programs efficiently.
- How to connect to remote servers to run simulations there.
- How to develop code effectively on their own or in collaboration using version control.
As Linux is a pre-requisite for all courses, we require all students to have access to some Linux-based environment for their coursework. This may be via Microsoft Windows’ WSL, or macOS (which is extremely similar in form to Linux), or a native Linux installation (e.g. Ubuntu). We also have laptops available to loan to students that support all the course requirements.