Course Title: Programming Fundamentals for Scientists

Part A: Course Overview

Course Title: Programming Fundamentals for Scientists

Credit Points: 12.00


Course Code




Learning Mode

Teaching Period(s)


City Campus


171H School of Science


Sem 2 2018,
Sem 2 2019,
Sem 1 2020,
Sem 2 2020,
Sem 1 2021


City Campus


175H Computing Technologies


Sem 1 2023,
Sem 1 2024

Course Coordinator: Dr Elham Naghizade

Course Coordinator Phone: +61 3 9925 0456

Course Coordinator Email:

Course Coordinator Location: Bldg 14 Level 9 Room 16

Course Coordinator Availability: by appointment

Pre-requisite Courses and Assumed Knowledge and Capabilities

Assumed Knowledge and Capabilities:

  • Capable of using the basic functions of an operating system such as Windows / Mac OS X / Linux / UNIX.

This course is a University Student Elective.

Course Description

Programming is acknowledged as a vital skill that enables problem solving through the use of computers across a range of varied disciplines. This course introduces you to basic concepts, syntax and control structures in programming. You will learn how to program in a step-wise problem solving fashion.

You are expected to bring a laptop to the lectorials and practicals of this hands-on course.

Objectives/Learning Outcomes/Capability Development

Upon successful completion of this course, you should be able to:

  1. Demonstrate knowledge of basic concepts, syntax and control structures in programming.
  2. Devise solutions to simple computing problems under specific requirements.
  3. Encode the devised solutions into computer programs and test the programs on a computer.
  4. Demonstrate understanding of standard coding conventions and ethical considerations in programming. 

This course contributes to the following Program Learning Outcomes for BP330 Bachelor of Space Science, and BP229 Bachelor of Science (Physics):

PLO1: Knowledge - Apply a broad and coherent set of knowledge and skills for developing user-centric computing solutions for contemporary societal challenges.

PLO2: Problem Solving - Apply systematic problem solving and decision-making methodologies to identify, design and implement computing solutions to real world problems, demonstrating the ability to work independently to self-manage processes and projects.

PLO4: Communication - Communicate effectively with diverse audiences, employing a range of communication methods in interactions to both computing and non-computing personnel.

PLO6: Responsibility and Accountability - Demonstrate integrity, ethical conduct, sustainable and culturally inclusive professional standards, including First Nations knowledges and input in designing and implementing computing solutions.

Overview of Learning Activities

Teaching staff inputs: Learning resources will be presented, explained and illustrated with demonstrations, examples and problems during lectorials, tutorials, laboratories, consultation sessions, and online using the Canvas LMS. Problem solving exercises, assignments and laboratory discussions are designed to develop your analytical and communication skills, drawing on knowledge and frameworks covered in lectorials.   Your inputs as learners: Your active and constructive participation in lectorials and tutorial/laboratory discussions is expected in addition to weekly private study, completion of tutorial and laboratory exercises and careful planning and completion of assessment tasks.   While a minimum attendance standard is not compulsory, non-attendance is correlated with lack of success in this course. Where visa conditions apply, attendance is compulsory.

Overview of Learning Resources

You should make extensive use of computer laboratories and relevant software provided by the School. You should be able to access course information and learning materials through Canvas and may be provided with copies of additional materials in class or via email. Lists of relevant reference texts, resources in the library and freely accessible Internet sites will be provided.

Overview of Assessment

The assessment for this course comprises practical work involving the development and analysis of programs in Python. Across all assessment tasks, you will be required to demonstrate your critical analysis and problem-solving skills.

This course has no hurdle requirements.

Assessment Tasks

Assessment Task 1: Fortnightly Quizzes
Weight: 15%
This assessment task supports CLOs 1, 2, 3 & 4

Assessment Task 2: Coding Task
Weight: 25%
This assessment task supports CLOs 1, 2, 3 & 4

Assessment Task 3: Coding Task
Weight: 30%
This assessment task supports CLOs 1, 2, 3 & 4

Assessment Task 4: End-of-semester Timed and Timetabled Task
Weight: 30%
This assessment task supports CLOs 1, 2, 3 & 4

This assessment is a timed and timetabled assessment that students must attend on campus except for international students who are outside Australia.