This course uses Piazza for discussions & support. You can post anonymously to each other, although the lecturers & tutor can always see who you are. Be courteous and help one another out—there will be consequences for anyone who engages in trolling or disrespectful behaviour.

If you need to get in touch with me (Ben) directly, you can send me an email. As you can imagine, I get a lot of email and I can’t make promises about how fast I’ll respond (although I’ll try and get back to within two working days). I also don’t check emails/Piazza after hours or on weekends, so if you really do need to get in touch make sure you don’t leave it till the last minute.

There are also student reps for the course (you’ll elect them in week 1), so you can talk to them and they’ll pass your (anonymous) feedback on to me.

Lab attendance

While the lab content isn’t assessable, I strongly recommend that you attend all the lab sessions. In the lab sessions you’ll get hands-on help in applying the concepts we’re covering in the lectures. They’re also a chance to get to know your tutor and get feedback on in-progress assignment submissions, etc. (your tutor will be the one who marks your assignments).


In COMP2300 you will be assessed on six occasions:

  1. a hurdle lab assessment task in week 4 (1 mark)
  2. 3 assignments in weeks 6, 8, 12 (12 marks each)
  3. a mid-semester exam in week 6 (13 marks)
  4. a final exam (50 marks)

Assignments (12 marks each) in weeks 6, 8 and 11

The assignments in this course all build on one another—over the course of these assignments you’ll turn your discoboard into a simple musical instrument (how exciting!). The “skeleton” files for the assignments will be released on the assigments page and you will submit them through GitLab. You can find the late/extension policies further down this page.

The assignments are the heart of this course, and should be fun! Make sure you start looking at and working on the assignments early. By completing these assignments you’ll be able to demonstrate your understanding of how programs are organised and executed on your discoboard.

Your assignment submission will be run through plagiarism-detection software, so if you use any code from somewhere else make sure you reference it in your statement of originality (see academic misconduct).

Week 4 lab exam (1 mark, hurdle)

In your week 4 lab session there will be a hurdle assessment task. This will take the form of a short, q&a-style discussion with your tutor (an oral exam). You will be asked to explain and perform a few basic tasks to do with reading, writing and debugging a simple program running on your discoboard.

Since this is a hurdle exam, you must pass this assessment task to pass the course. This is not meant to be scary—the assessment task will not be difficult. The purpose of this hurdle assessment item is to give you a chance to show that you’ve got the basic skills needed to complete the course. If you don’t have the skills to pass this assessment item, then you’ll really struggle to pass the course, and by having this “check” early on in the course you can avoid some pain if you’re not keeping up (for whatever reason).

Final exam (25 marks)

Details TBC. The final exam has a hurdle at 40%.

Final marks and grades

To pass the course, you must satisfy all of these criteria:

  1. score at least 50 overall
  2. pass the week 4 hurdle lab exam
  3. score at least 40% (20/50) on the final exam

Your final mark will be the total of your marks on the individual assessment items with the additional caveat that your mark may be scaled by the examiners’ conference to provide your overall course mark and grade.

If your final mark is < 50 but >= 45 then you will receive a PX grade and be eligible for supplementary assessment to try and pass the course.

If you fail one of the hurdles and if you get a final mark of 45 or greater then you will receive a PX grade and be eligible for supplementary assessment to try and pass the course.

If your final grade is less than 45 you will fail this course with a grade of N.

If you enrol, but don’t participate in the course at all you will fail with a final grade of NCN, which means a failure due to non-completion.


Marks and feedback for all assignments will be released through GitLab. Marks for the final exam will be released as part of your final grade when your grades for all courses come out at the end of the semester. Marks for these items are available upon request after the semester has finished.

Late penalties

Late submission of all assessment items (and non-attendance at exams) will result in a mark of zero for the assessment item. You need to hear this loud and clear, there’s no wiggle room on this—we won’t accept “it’s only five minutes late” excuses. The reason is that that’s not fair to the other students who handed something in by the deadline (they probably would have loved to have another few minutes as well).

This means you must plan ahead—don’t leave your submission to the last minute. It’s much better to get something done early and then refine it from there (especially with the GitLab submission process). We won’t accept last-minute excuses for lost work, etc. so make sure you’re aware of all the submission deadlines and plan accordingly. Also, make note of the communication policy above—if you need help/assistance from a lecturer or tutor you can’t get it after hours/at the last minute.


Postponing assessment deadlines is possible with good reasons & appropriate documentation (e.g. a medical certificate). For example, if you feel sick on the day of an exam, do not sit the exam. See a doctor instead and provide a medical certificate. If you can see ahead of time that a specific assessment date or deadline will be a problem for you, then contact Ben at least two weeks in advance (either via email or privately through Piazza) and we will work something out for you. In the interest of fairness we obviously will always require good reasons—but we want to listen to you and give you the opportunity to make your case.

Special assessments will not necessarily take the exact same form as the original assessment item, e.g. they may be oral examinations.


From the date that your marks for any assessment item is released electronically, you have a period of two weeks in which to appeal your mark. After this period your mark will be final.

If you’re unhappy with your grade for an assessment, then be wary of asking for a re-mark—you might get a lower mark. The purpose of the appeals process is to catch really outrageous errors in the marking process (e.g. if we mark the wrong assignment, or didn’t read your artist statement).

Supplementary assessment

If you receive a PX grade you are eligible for supplementary assessment. The assessment item may be an assignment, a written exam, an in-lab test, or an oral exam. If you pass this supplementary assessment item you will receive a PS grade and a mark of 50. If you fail, you will receive a grade of N and a mark of 44.

Supplementary assessment will happen early in Semester 2—we’ll be in touch via email to let you know the details.

Academic integrity

At the ANU we take academic integrity seriously. There are several different aspects to academic integrity, and several different types of academic misconduct. In COMP2300/6300 all the ANU academic integrity rules apply.

  • All your submitted work is assumed to be entirely your own work. Besides forbidding any direct copies, this also means that no part of your submission is inspired by, based on or a re-formulation of work by somebody else. Re-formulating the work of somebody else is actually worse, because (in addition to plagiarism) it shows a clear intent to deceive.

  • If your work has been inspired by something else (e.g. a classmate, or something you found on the web) you must indicate this in the statement of originality which you’ll submit alongside every assignment (including the major project). This gives you a place to clearly indicate your sources. Obviously you will not receive the highest mark if all of your work comes from somewhere else, but by indicating all sources clearly you won’t be guilty of academic misconduct. Failure to indicate any of your inspirations, sources, or collaboration partners will be regarded as an intent to deceive.

You are expected to be able to explain and defend any submitted assessment item. The course convener can conduct or initiate an additional interview about any submitted assessment item for any student. If there is a significant discrepancy between the two forms of assessment (e.g. if you clearly don’t understand the code that you submitted) it will be automatically treated as a case of suspected academic misconduct.

These rules are not at odds with being resourceful and working collaboratively—you should discuss your work in this course with others taking the class. However, you must never misrepresent the work of others as your own.

If you break any of these rules, it’s very likely you’ll get caught—we’re pretty good at finding this stuff out. The consequences of plagiarism are much worse than a bad mark on an assignment and we (the lecturers and tutors) don’t enjoy being a part of it any more than you do. Please help to make this a course which focuses entirely on the learning process and not on policing academic misconduct issues.


“Own machine” policy

Like most other computer science courses at ANU, this course is designed on the assumption that you will use the ANU laboratory environment (i.e. the software which runs in the CSIT computer labs). This lab environment is supported by ANU technical staff and we do our best to ensure that it works well in every respect. If things aren’t working in the lab, inform your tutor and/or the technical staff, who are located on the ground floor of the CSIT building in N117.

For your convenience, we also try hard to make sure the tools required for this course can be used on your own machine (e.g. your laptop or home desktop). They’re all free, and they run on Windows, macOS and Linux.

However, we can’t guarantee that things will always work on your own machine, and we are not responsible if they don’t work, especially just before a assignment is due (so this is never an acceptable excuse for a late submission).

If you wish to install and use the tools on your own machine, please follow these steps:

  1. use the information provided on these web pages to identify & install the appropriate tools
  2. complete the Lab 1 exercises and bring any questions that arise to the week one drop-in lab session
  3. use Piazza to seek help from others in the class
  4. seek help from your tutor during your scheduled lab
  5. seek help from your lecturer via Piazza or before and after lectures
  6. seek help from the Computer Science Student’s Association (CSSA), who are really keen to help students with things like setting up computers

If you choose to work on your own machine (which we have no control over), there’s always a risk that things which run fine on your own laptop will not work in the ANU software environment.

We’ll give you plenty of training on how to build and test that your software works reliably in the lab environment, but it’s ultimately your responsibility. “But it works on my machine” is never an acceptable excuse—you’ll be marked on the way it runs from a fresh clone of your GitLab repo on the lab machines. If there are any disputes, the course convenor’s decision is final.

Updated:  11 Dec 2017/ Responsible Officer:  Head of School/ Page Contact:  Ben Swift