Students

COMP6010 – Foundations of Computer Programming

2025 – Session 1, In person-scheduled-weekday, North Ryde

General Information

Download as PDF
Unit convenor and teaching staff Unit convenor and teaching staff Convenor and Lecturer
Michael Lay
Connvenor
Xiaohan Yu
Lecturer
Chris Chen
Credit points Credit points
10
Prerequisites Prerequisites
Corequisites Corequisites
Co-badged status Co-badged status
Unit description Unit description

This unit provides a foundation-level study of programming. The topics covered include programming environment and the process of program execution, variables, operators, boolean logic, control structures including conditions and loops, functions, storage of collections of items and performing operations on the same, and file management.

Learning in this unit enhances student understanding of global challenges identified by the United Nations Sustainable Development Goals (UNSDGs) Quality Education; Industry, Innovation and Infrastructure

Important Academic Dates

Information about important academic dates including deadlines for withdrawing from units are available at https://www.mq.edu.au/study/calendar-of-dates

Learning Outcomes

On successful completion of this unit, you will be able to:

  • ULO1: Apply enhanced problem solving skills to develop algorithms
  • ULO2: Implement programs from algorithms, showing an understanding of control flow.
  • ULO3: Adhere to standard software development skills such as test-driven development and debugging
  • ULO4: Understand and apply important foundation-level programming concepts of variables, operators, boolean logic, and control structures.
  • ULO5: Understand and apply important foundation-level programming concepts of functions and collections.

General Assessment Information

Requirements to Pass the Unit

To pass this unit, you must have:

  • An overall mark of 50% or higher in the unit, AND,
  • A mark of 50% or higher in practical exam 2.

 

Assignments (10% + 10%)

Assignments are due at 11:55pm on the Sunday (end of the week) stated in the unit guide. The programming assignments requires students to solve a real-life problem based on the contents covered during the semester. Submission of assignments will be done using the iLearn submission box.

 

Quizzes (20%)

2 quizzes over the course of 13 weeks. These quizzes will be taken during your registered practical class. Exact weeks can be found in the assessment tasks table.

 

Practical Exam 1 (20%)

In-class practical exam assessing contents covered during the first half of semester. This will be taken in self enrolled exam sessions during the Teaching Recess. Exact sessions dates and details on how to enrol will be released via iLearn. You will have one attempt in the first week of the teaching recess and one attempt in the second week of the teaching reccess. Your second attempt will be capped at 84 marks. 

 

Practical Exam 2 (40%)

In-class practical exam assessing contents during the entire semester. This will be taken during your registered practical class. Practical Exam 2 is a hurdle assessment, more information about the hurdle requirement for Practical Exam 2 is provided in the HURDLE section.

 

Release Dates

The latest dates the assignment will be released by are listed below:

  • Assignment 1 - To be released no later than Sunday 11:55pm Week 6
  • Assignment 2 - To be released no later than Sunday 11:55pm Week 11

 

HURDLE

Practical Exam 2 is a hurdle task. You must make a serious attempt at this assessment. A serious attempt is considered an attempt where you have either completed all questions, or tried to complete as much of the exam as possible. This assessment is a hurdle assessment as it is the only assessment where we assess all topics during the session. There are two attempts at the hurdle assessment and the best mark of two attempts will be used. The second attempt is capped at 84 marks. One attempt will be in the week 12 practical class and the other attempt in the week 13 practical class. You must get at least 50% in practical exam 2 to clear this hurdle. If your total mark in the unit is 50 or more but you do not pass practical exam 2, your final unit mark will be capped at 49, and your grade will be FH.

 

Late Assessment Submission Penalty 

Unless a Special Consideration request has been submitted and approved, a 5% penalty (of the total possible mark of the tast) will be applied each day a written assessment is not submitted, up until the 7th day (including weekends). After the 7th day, a grade of '0' will be awarded even if the assessment is submitted. Submission time for all written assessments is set at 11:55 pm. A 1-hour grace period is provided to students who experience a technical concern. 

For any late submission of time-sensitive tasks, such as scheduled tests/exams, performance assessments/presentations, and/or scheduled practical assessments/labs, students need to submit an application for Special Consideration.  

For example, if the assignment is worth 8 marks (of the entire unit) and your submission is late by 19 hours (or 23 hours 59 minutes 59 seconds), 0.4 marks (5% of 8 marks) will be deducted. If your submission is late by 24 hours (or 47 hours 59 minutes 59 seconds), 0.8 marks (10% of 8 marks) will be deducted, and so on. 

Assessments where Late Submissions will be accepted 

In this unit, late submissions will be accepted as follows: 

  • In Class (Practical) Quizzes: NO
  • In Class (Practical) Exams: NO
  • Assignment 1 and 2: YES, Standard Late Penalty applies 

 

Special Consideration

The Special Consideration Policy aims to support students who have been impacted by short-term circumstances or events that are serious, unavoidable and significantly disruptive, and which may affect their performance in assessment. 

Written Assessments: If you experience circumstances or events that affect your ability to complete the written assessments in this unit on time, please inform the convenor and submit a Special Consideration request through http://connect.mq.edu.au/.

Assessment Tasks

Name Weighting Hurdle Due
Quizzes 20% No Weeks 7, 11 during your registered practical class
Practical Exam 1 20% No 1st + 2nd week of Teaching Recess in self enrolled sessions
Practical Exam 2 40% Yes Week 12, 13 during your registered practical class
Assignment 1 10% No Sunday 11:55pm first week of Teaching Recess
Assignment 2 10% No Sunday 11:55pm Week 13

Quizzes

Assessment Type 1: Quiz/Test
Indicative Time on Task 2: 20 hours
Due: Weeks 7, 11 during your registered practical class
Weighting: 20%

 

Quizzes over the course of 13 weeks in practical classes (exact weeks to be determined based on timetabling and published in the unit guide).

 


On successful completion you will be able to:
  • Apply enhanced problem solving skills to develop algorithms
  • Implement programs from algorithms, showing an understanding of control flow.
  • Adhere to standard software development skills such as test-driven development and debugging
  • Understand and apply important foundation-level programming concepts of variables, operators, boolean logic, and control structures.

Practical Exam 1

Assessment Type 1: Programming Task
Indicative Time on Task 2: 15 hours
Due: 1st + 2nd week of Teaching Recess in self enrolled sessions
Weighting: 20%

 

In-class practical exam as the invigilated assessment assessing contents covered during the first half of the session.

 


On successful completion you will be able to:
  • Apply enhanced problem solving skills to develop algorithms
  • Implement programs from algorithms, showing an understanding of control flow.
  • Adhere to standard software development skills such as test-driven development and debugging
  • Understand and apply important foundation-level programming concepts of variables, operators, boolean logic, and control structures.

Practical Exam 2

Assessment Type 1: Programming Task
Indicative Time on Task 2: 30 hours
Due: Week 12, 13 during your registered practical class
Weighting: 40%
This is a hurdle assessment task (see assessment policy for more information on hurdle assessment tasks)

 

In-class practical exam as the summative invigilated assessment assessing contents covered during the entire session.

 


On successful completion you will be able to:
  • Apply enhanced problem solving skills to develop algorithms
  • Implement programs from algorithms, showing an understanding of control flow.
  • Adhere to standard software development skills such as test-driven development and debugging
  • Understand and apply important foundation-level programming concepts of variables, operators, boolean logic, and control structures.
  • Understand and apply important foundation-level programming concepts of functions and collections.

Assignment 1

Assessment Type 1: Programming Task
Indicative Time on Task 2: 10 hours
Due: Sunday 11:55pm first week of Teaching Recess
Weighting: 10%

 

Programming assignment that requires students to solve a real-life problem based on the contents covered during the semester

 


On successful completion you will be able to:
  • Apply enhanced problem solving skills to develop algorithms
  • Implement programs from algorithms, showing an understanding of control flow.
  • Adhere to standard software development skills such as test-driven development and debugging
  • Understand and apply important foundation-level programming concepts of variables, operators, boolean logic, and control structures.

Assignment 2

Assessment Type 1: Programming Task
Indicative Time on Task 2: 10 hours
Due: Sunday 11:55pm Week 13
Weighting: 10%

 

Programming assignment that requires students to solve a real-life problem based on the contents covered during the semester

 


On successful completion you will be able to:
  • Apply enhanced problem solving skills to develop algorithms
  • Implement programs from algorithms, showing an understanding of control flow.
  • Adhere to standard software development skills such as test-driven development and debugging
  • Understand and apply important foundation-level programming concepts of variables, operators, boolean logic, and control structures.
  • Understand and apply important foundation-level programming concepts of functions and collections.

1 If you need help with your assignment, please contact:

  • the academic teaching staff in your unit for guidance in understanding or completing this type of assessment
  • the Writing Centre for academic skills support.

2 Indicative time-on-task is an estimate of the time required for completion of the assessment task and is subject to individual variation

Delivery and Resources

Week 1 Classes

Lectures start in week 1.

Practical classes start in week 1.

----------

Methods of Communication

We will communicate with you via your university email and through announcements on iLearn. Queries to convenors can either be placed on the iLearn discussion board or sent to the unit convenor via the contact email on iLearn.

----------

Resources

Lecture notes: Check iLearn and also refer to https://softwaretechnologymq.github.io/

Python (3.11.2 at the time of writing this guide): https://python.org/

Visual Studio Code: https://code.visualstudio.com/

----------

Unit Schedule

Week Lecture Topic Practical Content / Activity
1 Variables + Number Conversions Problem Solving, Setup
2 Conditions + Strings Numbers, Datatypes, Conversions, Helper functions
3 Loops Conditions, Strings
4 Problem Solving 1 Conditions, Loops
5 Functions 1 Loops
6 Functions 2 Functions
7 Problem Solving 2 + Unit testing Problem Solving
Teaching Recess 1 - -
Teaching Recess 2 - -
8 Collections 1 Unit Testing
9 Collections 2 Lists
10 Classes Dictionaries
11 File System and I/O Classes
12 Problem Solving Practical Exam 2 - Attempt
13 Revision Practical Exam 2 - Attempt

Policies and Procedures

Macquarie University policies and procedures are accessible from Policy Central (https://policies.mq.edu.au). Students should be aware of the following policies in particular with regard to Learning and Teaching:

Students seeking more policy resources can visit Student Policies (https://students.mq.edu.au/support/study/policies). It is your one-stop-shop for the key policies you need to know about throughout your undergraduate student journey.

To find other policies relating to Teaching and Learning, visit Policy Central (https://policies.mq.edu.au) and use the search tool.

Student Code of Conduct

Macquarie University students have a responsibility to be familiar with the Student Code of Conduct: https://students.mq.edu.au/admin/other-resources/student-conduct

Results

Results published on platform other than eStudent, (eg. iLearn, Coursera etc.) or released directly by your Unit Convenor, are not confirmed as they are subject to final approval by the University. Once approved, final results will be sent to your student email address and will be made available in eStudent. For more information visit connect.mq.edu.au or if you are a Global MBA student contact globalmba.support@mq.edu.au

Academic Integrity

At Macquarie, we believe academic integrity – honesty, respect, trust, responsibility, fairness and courage – is at the core of learning, teaching and research. We recognise that meeting the expectations required to complete your assessments can be challenging. So, we offer you a range of resources and services to help you reach your potential, including free online writing and maths support, academic skills development and wellbeing consultations.

Student Support

Macquarie University provides a range of support services for students. For details, visit http://students.mq.edu.au/support/

The Writing Centre

The Writing Centre provides resources to develop your English language proficiency, academic writing, and communication skills.

The Library provides online and face to face support to help you find and use relevant information resources. 

Student Services and Support

Macquarie University offers a range of Student Support Services including:

Student Enquiries

Got a question? Ask us via the Service Connect Portal, or contact Service Connect.

IT Help

For help with University computer systems and technology, visit http://www.mq.edu.au/about_us/offices_and_units/information_technology/help/

When using the University's IT, you must adhere to the Acceptable Use of IT Resources Policy. The policy applies to all who connect to the MQ network including students.

Changes from Previous Offering

We value student feedback to be able to continually improve the way we offer our units. As such we encourage students to provide constructive feedback via student surveys, to the teaching staff directly, or via the FSE Student Experience & Feedback link in the iLearn page.

Practical Exam 1 now has two attempts with the second attempt capped at 84. Practical Exam 1 will now be taken in self enrolled sessions during the teaching reccess. Practical Exam 2 now has the second attempt capped at 84. Quizzes have been reduced from 4 to 2.

Changes since First Published

Date Description
10/02/2025 Update special consideration section to reflect the new process of submitting via http://connect.mq.edu.au/.

Unit information based on version 2025.03 of the Handbook