Course Title: Programming Fundamentals for Scientists

Part A: Course Overview

Course Title: Programming Fundamentals for Scientists

Credit Points: 12.00

Important Information:

Please note that this course may have compulsory in-person attendance requirements for some teaching activities.

To participate in any RMIT course in-person activities or assessment, you will need to comply with RMIT vaccination requirements which are applicable during the duration of the course. This RMIT requirement includes being vaccinated against COVID-19 or holding a valid medical exemption.

Please read this RMIT Enrolment Procedure as it has important information regarding COVID vaccination and your study at RMIT:

Please read the Student website for additional requirements of in-person attendance:

Please check your Canvas course shell closer to when the course starts to see if this course requires mandatory in-person attendance. The delivery method of the course might have to change quickly in response to changes in the local state/national directive regarding in-person course attendance.


Course Code




Learning Mode

Teaching Period(s)


City Campus


171H School of Science


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


City Campus


175H Computing Technologies


Sem 1 2022

Course Coordinator: Dr Elham Naghizade

Course Coordinator Phone: +61

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:

  • CLO 1: Demonstrate knowledge of basic concepts, syntax and control structures in programming.
  • CLO 2: Devise solutions to simple computing problems under specific requirements.
  • CLO 3: Encode the devised solutions into computer programs and test the programs on a computer.
  • CLO 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):

  • PLO-1 Understanding science and engineering
    • PLO-1.1 You will demonstrate an understanding of the scientific method and engineering fundamental and an ability to apply them  in practice.

  • PLO-2 Knowledge capability
    • PLO-2.2 You will have knowledge in at least one discipline other than your primary discipline and some understanding of interdisciplinary linkages.
  • PLO-3 Inquiry and problem solving
    • PLO-3.3 You will be able to choose appropriate tools and methods to solve scientific problems within your area of specialisation.
    • PLO-3.4 You will demonstrate well-developed problem solving skills, applying your knowledge and using your ability  to think analytically and creatively.

  • PLO-4 Communication
    • PLO-4.2 You will be able to communicate the solution to a problem or the results of a scientific investigation using appropriate methods for different audiences.

  • PLO-5 Personal and professional responsibility
    • PLO-5.1 You will develop a capacity for independent and self-directed work.
    • PLO-5.2 You will work responsibly, safely, legally and ethically.

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: Coding Task
Weighting: 30%
This assessment task supports CLOs 1, 2, 3, 4

Assessment Task 2: Coding Task
Weighting: 35%
This assessment task supports CLOs 1, 2, 3, 4

Assessment Task 3: Coding Task
Weighting: 35%
This assessment task supports CLOs 1, 2, 3, 4