THE UNIVERSITY of EDINBURGH

DEGREE REGULATIONS & PROGRAMMES OF STUDY 2018/2019

University Homepage
DRPS Homepage
DRPS Search
DRPS Contact
DRPS : Course Catalogue : School of Physics and Astronomy : Postgraduate (School of Physics and Astronomy)

Postgraduate Course: Programming Skills (PGPH11079)

Course Outline
SchoolSchool of Physics and Astronomy CollegeCollege of Science and Engineering
Credit level (Normal year taken)SCQF Level 11 (Postgraduate) AvailabilityNot available to visiting students
SCQF Credits10 ECTS Credits5
SummaryThis course is designed to help you to produce higher quality code, in less time and with less effort. These programming skills are applicable to any programming language and the course is illustrated with examples from C, Fortran 90, Java and Python.

Areas of specific relevance to parallel high-performance computing, including the use of batch systems, scientific libraries, profilers, and performance analysis, are also covered.
Course description * Best practices for scientific computing.
* Fundamentals of operating systems, compilers and batch systems.
* Writing programs for people, programs that are modular, maintainable, and understandable.
* Using automated testing to help ensure the correctness of our programs.
* Using profiling and performance analysis to improve the efficiency of our programs.
* Using software development tools to achieve more with less effort, including integrated development environments, code browsers, debuggers, revision control, build management tools, automated test frameworks, and profilers.

You must have experience in a programming language e.g. C, C++, FORTRAN, Java or Python, and be familiar with programming concepts including conditionals, loops, arrays and functions. No knowledge of parallel programming is needed.
Entry Requirements (not applicable to Visiting Students)
Pre-requisites Co-requisites
Prohibited Combinations Other requirements You must have experience in a programming language e.g. C, C++, Python, or FORTRAN, Java and must be familiar with programming concepts including conditionals, loops, arrays and functions. No knowledge of parallel programming is needed. A knowledge of bash shell is highly recommended.
Course Delivery Information
Not being delivered
Learning Outcomes
On completion of this course, the student will be able to:
  1. Develop code in a Linux/Unix environment.
  2. Develop code that is modular, robust, reliable, maintainable, efficient and understandable.
  3. Develop unit and regression tests.
  4. Use software development tools including integrated development environments, code browsers, debuggers, revision control, build management tools, automated test frameworks, and profilers
  5. Design, perform, analyse and write-up software performance experiments.
Reading List
None
Additional Information
Graduate Attributes and Skills Not entered
KeywordsPS (S1)
Contacts
Course organiserDr Michael Jackson
Tel: (0131 6)50 5141
Email: Mike.Jackson@ed.ac.uk
Course secretaryMr Ben Morse
Tel: (0131 6)51 3398
Email: Ben.Morse@ed.ac.uk
Navigation
Help & Information
Home
Introduction
Glossary
Search DPTs and Courses
Regulations
Regulations
Degree Programmes
Introduction
Browse DPTs
Courses
Introduction
Humanities and Social Science
Science and Engineering
Medicine and Veterinary Medicine
Other Information
Combined Course Timetable
Prospectuses
Important Information