We use cookies to ensure that we give you the best experience on our website. You can change your cookie settings at any time. Otherwise, we'll assume you're OK to continue.

Durham University

Faculty Handbook Archive

Archive Module Description

This page is for the academic year 2021-22. The current handbook year is 2022-23

Department: Mathematical Sciences

MATH1587: Programming I

Type Open Level 1 Credits 10 Availability Available in 2021/22 Module Cap None. Location Durham


  • Normally grade A in A-Level Mathematics (or equivalent).


  • Calculus I (MATH 1061) and Linear Algebra I (MATH 1071).

Excluded Combination of Modules

  • Maths for Engineers and Scientists (MATH1551), Single Mathematics A (MATH1561), Single Mathematics B (MATH1571), Computational Thinking (COMP1051)


  • Basic principles and basic competence in computer programming.


  • Programming: basic types (numerics), operators, variables and assignment.
  • Control structures: conditionals, loops and functions.
  • Floating-point arithmetic.
  • Lists, strings and introduction to objects.

Learning Outcomes

Subject-specific Knowledge:
  • The ability to: precisely formulate mathematical problems,
  • develop algorithms to solve them,
  • implement the algorithm as a Python program.
Subject-specific Skills:
  • students will have basic mathematical skills in the following areas: Modelling and computer programming.
Key Skills:
  • students will have an understanding of the principle of computational algorithms, and basic programming skills for mathematical applications.

Modes of Teaching, Learning and Assessment and how these contribute to the learning outcomes of the module

  • Lectures introduce the basic concepts.
  • Practical sessions develop and practice programming skills, and provide active engagement and feedback to the learning process.
  • Weekly homework problems provide formative assessment to guide students in the correct development of their knowledge and skills. They are also an aid in developing students' awareness of standards required.
  • A computer-based examination partially assesses overall achievement.

Teaching Methods and Learning Hours

Activity Number Frequency Duration Total/Hours
Lectures 10 1 per week 1 Hour 10
Practicals 10 One per week in Michaelmas Term 2 Hours 20
Preparation and Reading 70
Total 100

Summative Assessment

Component: Continuous assessment for programming Component Weighting: 75%
Element Length / duration Element Weighting Resit Opportunity
Computer project coursework 67% Yes
Weekly programming assessments 33% Yes
Component: Practical assessment for programming Component Weighting: 25%
Element Length / duration Element Weighting Resit Opportunity
Computer-based examination 2 hours 100% Yes

Formative Assessment:

In the computer practicals examples will be given and direct oral feedback will be given on students' work.

Attendance at all activities marked with this symbol will be monitored. Students who fail to attend these activities, or to complete the summative or formative assessment specified above, will be subject to the procedures defined in the University's General Regulation V, and may be required to leave the University