37000 Postgraduate Programming 1
Warning: The information on this page is indicative. The subject outline for a
particular session, location and mode of offering is the authoritative source
of all information about the subject for that offering. Required texts, recommended texts and references in particular are likely to change. Students will be provided with a subject outline once they enrol in the subject.
Subject handbook information prior to 2021 is available in the Archives.
Credit points: 8 cp
Result type: Grade and marks
There are course requisites for this subject. See access conditions.
Description
This subject provides an introduction to data structures and programming principles and techniques that can be used to implement models and solutions to problems in numerical analysis, numerical modelling, optimisation, and statistics. The subject equips students with programming skills in Python at a level required to develop code to implement an algorithm. The programming language Python is open source and a high level language that is widely used in industry and academia.
Subject learning objectives (SLOs)
Upon successful completion of this subject students should be able to:
1. | Competently use Python to work with and visualise data, and to solve numerical problems. |
---|---|
2. | Use Python standard packages (including NumPy, SciPy and Pandas), and find information relating to any required Python modules, using that information to write code. . |
3. | Create Python code for numerical and data handling algorithms. |
4. | Perform data analysis using Python. |
5. | Synthesise data analysis results and communicate the findings effectively. |
Course intended learning outcomes (CILOs)
This subject also contributes specifically to the development of following course intended learning outcomes:
- Evaluate: Integrate foundation knowledge in mathematics, statistics and programming to complement your current specialisation or for further learning . (1.3)
- Synthesise: Investigate real-world problems by analysing and evaluating different solutions. (2.2)
- Synthesise: Demonstrate an awareness of ethical solutions to mathematical problems and their impact on society. (3.2)
- Evaluate: Collaborate to implement professional solutions to problems arising in the workplace. (3.3)
- Analyse: Develop information retrieval and consolidation skills to critically evaluate mathematical/statistical aspects of information to think creatively and try different approaches to solving problems. (4.1)
- Synthesise: Test critical thinking skills to create solutions for mathematical problems. (4.2)
Contribution to the development of graduate attributes
The Faculty of Science has determined that our courses will aim to develop the following attributes in students at the completion of their course of study. Each subject will contribute to the development of these attributes in ways appropriate to the subject, thus not all attributes are expected to be addressed in all subjects.
This subject contributes to the development of the following graduate attributes:
1. Disciplinary Knowledge - acquire the mathematical, statistical and computational foundations to deepen their knowledge, allowing them to further their studies in mathematics or in other areas such as quantitative finance.
2. Research, inquiry and critical thinking - develop the ability to apply and demonstrate critical and analytical skills to developing solution to complex real world problems.
3. Professional, ethical and social responsibility - students will learn to manage their own work and to accept responsibility for their own learning. Ethical understanding of the importance of privacy and licensing issues in relation to datasets is emphasised, and critical thinking is developed.
4. Reflection, Innovation and Creativity – develop the ability to design creative solutions to contemporary mathematical problems using reflective practices and self-directed learning.
Teaching and learning strategies
This subject will consist of 3 hours of lectures/workshops per week. For Autumn 2021, this subject will be delivered online to enable social distancing.
The emphasis of this subject is on the application of programming techniques to solve mathematical and statistical problems at a postgraduate level. The goal is for students to learn programming skills and, in a variety of case studies, use those skills to write code. The ease of developing code interactively and the availability of sophisticated libraries are what make Python the ideal programming language for this task. The subject equips students with programming skills in Python at a level required to develop code to implement an algorithm. The programming language Python is open source and a high level language that is widely used in industry and academia.
The subject is run in self-paced, online format. Because programming skills are honed by coding, this subject requires a significant amount of personal work, and students are expected to complete all the activities, including any coding, reading, and video assignments.
There will be tutorial sessions involving collaborative learning where students will work on given problems in small groups and will present their solutions during the tutorial to the class. Other students will be asked to give peer feedback and the lecturer will provide feedback to the class on the presented solutions.
Content (topics)
Introduction to Jupyter and Python.
Python syntax.
NumPy.
Wrangling data with Pandas.
Plotting and visualisation.
Classes and Objects.
Optimisation, simulation.
Assessment
Assessment task 1: Assessment 1 - Class Test 1.
Intent: | This assessment task contributes to the development of the following graduate attributes: 1. Disciplinary Knowledge 2. Research, inquiry and critical thinking 4. Reflection, Innovation, Creativity |
---|---|
Objective(s): | This assessment task addresses subject learning objective(s): 1, 2 and 3 This assessment task contributes to the development of course intended learning outcome(s): 1.3, 2.2 and 4.1 |
Type: | Quiz/test |
Groupwork: | Individual |
Weight: | 30% |
Criteria: | Use of appropriate programming techniques. Correctness of the results. |
Assessment task 2: Assessment 2 - Class Test 2.
Intent: | This assessment task contributes to the development of the following graduate attributes: 3. Professional. ethical and social responsibility 4. Reflection, Innovation, Creativity |
---|---|
Objective(s): | This assessment task addresses subject learning objective(s): 1, 2 and 5 This assessment task contributes to the development of course intended learning outcome(s): 3.3, 4.1 and 4.2 |
Type: | Quiz/test |
Groupwork: | Individual |
Weight: | 30% |
Criteria: | Use of appropriate programming techniques. Correctness of the results. |
Assessment task 3: Assessment 3 - Class Test 3.
Intent: | This assessment task contributes to the development of the following graduate attributes: 1. Disciplinary Knowledge 2. Research, inquiry and critical thinking 3. Professional, Ethical and Social Responsibility 4. Reflection, Innovation and Creativity |
---|---|
Objective(s): | This assessment task addresses subject learning objective(s): 1, 2, 3 and 4 This assessment task contributes to the development of course intended learning outcome(s): 1.3, 2.2, 3.2 and 4.1 |
Type: | Quiz/test |
Groupwork: | Individual |
Weight: | 40% |
Criteria: | Use of appropriate programming techniques. Correctness of the results. |
Minimum requirements
Students must achieve at least 50% of the subject’s total marks.