Exam finished

Week 12 Monday 17:10:00

The exam is now finished (unless you have approved extra time).

As an important reminder:

Please do not discuss the exam for at least 24-hours after the conclusion. Recall that just because the exam is over for you, it does not mean that the exam is over for everyone.

Further submissions will no longer be accepted.

Congratulations everyone for completing COMP6991! I'd like to thank you all for choosing to take this course, and I hope to see you all around in future.

Thanks again everyone for an awesome term!

Cheers, Zac.

Exam finishing soon

Week 12 Monday 16:50:00

The exam is finishing in approximately 10 minutes (unless you have extra time).

As an important reminder:

Please do not discuss the exam for at least 24-hours after the conclusion. Recall that just because the exam is over for you, it does not mean that the exam is over for everyone.

Make sure you've submitted with give all questions you've attempted.

Submissions timestamped after the deadline are not accepted.

Fix to Q1.1

Week 12 Monday 14:07:00

Hello students,

There was a last-minute edit to Q1.1 which unintentionally made the code compile. The example has been reverted, leading to a slight change in the sample snippet (the removal of a break in the if statement).

We will be extra-lenient in the marking of this question to accomodate the inconvenience!

Zac

Final exam starting this afternoon (14:00)

Week 12 Monday 10:30:00

Hi everyone!

Your final exam will be commencing in around 3.5 hours from now, at 14:00 Sydney time. I will release the exam at 13:55 to give everyone a chance to load the paper before the official starting time at 14:00. You may read the paper as you access it, but please do not commence working on the exam until the official start time at 14:00.

The exam will be accessible at https://cgi.cse.unsw.edu.au/~cs6991/current/exam/ at 13:55. The URL will 404 until 13:55.

The exam is three hours, and so will conclude at 14:00. If you have extra exam-time from your ELP, it has been applied (but will not show during submission).

Please do not submit any questions after the deadline. Run give as you go in order to avoid having to submit everything right near the end, when servers are sure to be slow.

If anything goes wrong for you during the exam, please send us an email at . DO NOT POST ON THE COURSE FORUM DURING THE EXAM.

Please do not discuss the exam for at least 24-hours after the conclusion. Recall that just because the exam is over for you, it does not mean that the exam is over for everyone.

Now is a great time to make sure you will have adequate disk quota to complete your exam. Run the rquota command to check that you have a reasonable amount of space available.

Following this will be the exam conditions found at the top of the paper. You must read these either before or at the beginning of your exam. Of additional importance is the note about AI assistants.

Cheers! Zac.


Exam Preamble

Starting time: 2026-08-17 14:00:00

Finishing time: 2026-08-17 17:00:00

Time for the exam: 3 hours

This exam contains 7 questions, each of equal weight (10 marks each).

Total number of marks: 70

Total number of practical programming questions: 3 (30 marks)

Total number of theoretical programming questions: 4 (40 marks)

You should attempt all questions.

Exam Condition Summary

  • This exam is "Open Book"
  • Joint work is NOT permitted in this exam
  • You are NOT permitted to communicate (email, phone, message, talk) with anyone during this exam, except for the COMP6991 staff via cs6991.exam@cse.unsw.edu.au
  • The exam paper is confidential, sharing it during or after the exam is prohibited.
  • You are NOT permitted to submit code that is not your own
  • You may NOT ask for help from online sources.
  • Even after you finish the exam, on the day of the exam, do NOT communicate your exam answers to anyone. Some students have extended time to complete the exam.
  • Do NOT place your exam work in any location, including file sharing services such as Dropbox or GitHub, accessible to any other person.
  • Your zpass should NOT be disclosed to any other person. If you have disclosed your zpass, you should change it immediately.
  • The use of AI assistants is strictly prohibited in this exam. This includes services such as Github Copilot, OpenAI ChatGPT, agentic coding tools, etc.

Deliberate violation of these exam conditions will be referred to Student Integrity Unit as serious misconduct, which may result in penalties up to and including a mark of 0 in COMP6991 and exclusion from UNSW.

  • You are allowed to use any resources from the course during the exam.
  • You are allowed to use small amounts of code (< 10 lines) of general-purpose code (not specific to the exam) obtained from a site such as Stack Overflow or other publicly available resources. You should attribute the source of this code clearly in an accompanying comment.

Exam submissions will be checked, both automatically and manually, for any occurrences of plagiarism.

By starting this exam, as a student of The University of New South Wales, you do solemnly and sincerely declare that you have not seen any part of this specific examination paper for the above course prior to attempting this exam, nor have any details of the exam's contents been communicated to you. In addition, you will not disclose to any University student any information contained in the abovementioned exam for a period of 24 hrs after the exam. Violation of this agreement is considered Academic Misconduct and penalties may apply.

For more information, read the UNSW Student Code, or contact the Course Account.

  • This exam comes with starter files.
  • You will be able to commence the exam and fetch the files once the exam commences.
  • You may complete the exam questions using any platform you wish (VLab, VSCode, etc). You should ensure that the platform works correctly.
  • You may submit your answers, using the give command provided below each question.
  • You can use give to submit as many times as you wish. Only the last submission will be marked.
  • Do NOT leave it to the deadline to submit your answers. Submit each question when you finish working on it.
  • Please make sure that you submit all your answers at the conclusion of the exam - running the autotests does not automatically submit your code.
  • Autotests are available for all practical questions to assist in your testing. You can use the command: 6991 autotest
  • Passing autotests does not guarantee any marks. Remember to do your own testing!
  • No marks are awarded for commenting - but you can leave comments for the marker to make your code more legible as needed

Language Restriction

  • All practical programming questions must be answered entirely in Rust; you may not submit code in any other programming languages.
  • You are not permitted to use third-party crates other than the standard library (std).

Fit to Sit

By sitting or submitting an assessment on the scheduled assessment date, a student is declaring that they are fit to do so and cannot later apply for Special Consideration.

If, during an exam a student feels unwell to the point that they cannot continue with the exam, they should take the following steps:

  1. Stop working on the exam and take note of the time
  2. Contact us immediately, using cs6991.exam@cse.unsw.edu.au, and advise us that you are unwell
  3. Immediately submit a Special Consideration application saying that you felt ill during the exam and were unable to continue
  4. If you were able to advise us of the illness during the assessment (as above), attach screenshots of this conversation to the Special Consideration application

Technical Issues

If you experience a technical issue, you should take the following steps:

  1. If your issue is with the connection to CSE, please follow the following steps:
    • If you are using VLab: Try exiting VLAB and reconnecting again - this may put you on a different server, which may improve your connection. If you are still experiencing problems, you can try changing how you connect to the CSE servers. Consider:
    • If you are using VSCode remote-ssh: Try disconnecting VSCode, and then changing the URL from vscode.unsw.edu.au to vscode2.unsw.edu.au.
    • If you are using SSH: Try disconnecting SSH and reconnecting again.
  2. If things are still NOT working, take screenshots of as many of the following as possible:
    • error messages
    • screen not loading
    • timestamped speed tests
    • power outage maps
  3. Contact should be made immediately to advise us of the issue at cs6991.exam@cse.unsw.edu.au
  4. A Special Consideration application should be submitted immediately after the conclusion of the assessment, along with the appropriate screenshots.

An update on assignment marking

Week 11 Tuesday 22:30:00

Hey everyone!

Just an update; the majority (~80% students) of assignment 1 marks have now been finalized and released onto give.

A few of you may see "0" for your ID mark; or not have any mark to see at all - in this case - your mark is not ready. This is mostly in the case of an extension via short extensions or ELP, as we are required to wait longer before we start marking!

For assignment 2 - we will not have the marks ready before the end of term; but hopefully they will be ready shortly after :).

For your labs; we're aware there are some issues with Lab08 and Lab09 marking; we'll be addressing these post-exam as we do an end of term cleanup.

Regarding emails; we have a rather large backlog - but please rest assured we do go through all of them and reply to the majority as we go. If your email is just asking for an extension whilst the short extension portal was down; we likely won't reply but we will apply the extension. If you believe that we've missed something; or not applied something appropriately - please do reach out :)

If you have any questions; please ask them on the course forum first (if they're generic) - any specific marking queries or eg. extensions not applied; please reach out to the course email (not tutors!); however we likely will not be able to reply until after the final!

Thanks! Shrey

Lecture scheduling tomorrow

Week 9 Monday 21:00:00

Hi all,

As previously mentioned, I'm leaving on a work trip this week, so the lectures required a little bit of shuffling. We're going to do our first lecture (introducing unsafe Rust) tomorrow morning online from 10:00-12:00. It can be accessed here.

Then, we will still have our usual in-person lecture tomorrow night from 18:00-20:00 - that will be the part 2 follow-on from the morning lecture. Then, the Wednesday lecture will be cancelled. Hopefully this arrangement works well enough for you all! As always I will be happy to field questions during/after both lectures tomorrow, both online and in-person!

Cheers all, hope to see you tomorrow!

Zac

Lecture online (or postponed) tonight

Week 8 Tuesday 16:00:00

Hi all,

Sadly I'm quite unwell today - I've been running a nasty headache all day long. I will do my best to stand up the lecture tonight, livestreamed on YouTube, but there's also the possibility I will not be well enough for that in a couple of hours time.

I'll do my best, and if I need to call it off, I'll post another announcement. The live-stream URL for tonight: https://youtube.com/live/bkMQ1_SH-Ho

Thanks all,

Zac

Self-Serve Extensions

Week 7 Wednesday 21:30:00

Hello students!

You may have noticed a new "self-serve extensions" menu item in the sidebar of the course website today!

You can access the tool here.

I discussed how they work in tonight's lecture (available here) right near the beginning.

Just an FYI for you all!

Cheers,

Zac

COMP6991 Help Sessions Start Today

Week 4 Wednesday 09:40:00

You can join a help session at any of these times, every week from this week to the end of Week 10.

  • Monday 12pm - 2pm (Halogen and Ningxiao)
  • Tuesday 12pm - 2pm (Ava and Yanlin)
  • Wednesday 11am - 1pm (Ava and Ningxiao)
  • Thursday 2pm - 4pm (Halogen and Yanlin)
  • Friday 6pm - 8pm (Dicko and Lorenzo)
  • Saturday 6pm - 8pm (Dicko and Esha)
  • Sunday 2pm - 4pm (Lorenzo and Wisesa)

You can join them on Discord, using this link: https://discord.com/invite/f4hNSpeVpz

Cheers!

Zac

Lecture online tonight!

Week 4 Tuesday 11:00:00

Hi all!

We're going to run the lecture online tonight, where we'll be talking about modularity, testing, and documentation in Rust! The plan is to go back in-person tomorrow night, where we'll finish off whatever is left of the topic and talk about assignment 1 - but I'll send another notice if anything changes on that front!

The lectures will be hosted live on YouTube at our usual scheduled time (18:00). There will also be a live chat available to interact with myself and each other.

The live-stream URL for tonight: https://youtube.com/live/8ZTtfZePga0

Thanks everyone!

Zac

Welcome to COMP6991

Week 1 Monday 09:00:00

Welcome everyone, to the eighth offering of COMP6991: Solving Modern Programming Problems with Rust! We are so glad to have you all here and sincerely hope you enjoy your time with us here in this course.

First off, some quick administrivia:

Course website

The course website (where you will find this announcement) can be found at https://cgi.cse.unsw.edu.au/~cs6991/26T2/. This will also link you to the course outline, the course timetable, and the course forum (not accessible yet). This course does not use WebCMS3 nor Moodle (except to access Echo360 recordings).

Lectures

Our first lecture starts Tuesday week 1 (2026-06-02 18:00:00) -- that's tomorrow! The lectures are from 6:00pm - 8:00pm on both Tuesdays and Wednesdays each week (except week 6). We plan to examine not just Rust code, but hopefully many different programming languages during the lectures and through this set the scope of our studies for COMP6991. I hope to see you there!

The lectures are hosted in-person at E19 Patricia O'Shane 105 (K-E19-105) on Tuesdays and Ritchie Theatre (K-G19-LG02) on Wednesdays. The lectures will be recorded (into Echo360), Live-streaming seems to be a coin-flip term to term. Hopefully it works this term, but it's sadly not something I have control over.

22T3's lecture recordings are also available anytime here.

Workshops

Through your myUNSW enrollment, you will have selected a workshop class to join each week. It may have shown up as LAB or something similar on the class registration -- this is your workshop. The workshops are held weekly (except week 6) on Tuesdays, Wednesdays, and Fridays. Please attend the one workshop that you are enrolled in.

The workshops are heavily practical and involve code design, programming in Rust, and finally reviewing code written and design decisions made, including considering what the experience may have been in other programming languages, etc.

I highly recommend all students to attend at-least your first couple of workshops -- I think you'll find them to be a fun, educational, and social experience, and hopefully you won't need further convincing after that point. If you make the effort to attend them and find this not to be the case, please tell us why and we'll do better!

Our team

Our teaching team this term consists of:

  • Aaron Manning
  • Ava Cameron
  • Brian Li
  • Dicko Evaldo
  • Esha Tripathi
  • Halogen Truong
  • Kobi Beckett
  • Lorenzo Grillo
  • Nicholas Langford
  • Nicole Chun
  • Ningxiao Yang
  • Shrey Somaiya
  • Sunny Chen
  • Wisesa Resosudarmo
  • Xavier Carey
  • Yanlin Li

We are extremely lucky to have such a talented and friendly teaching team. Please show your respect at all times to our course staff, who I know for certain are all incredibly excited to be teaching this course for you all!

Weekly exercises

On the course website you will find your first set of weekly exercises has already been released! The due date is Week 2 Wednesday, and this due date structure (week n + 1 Wednesday) will follow similarly for later weekly exercises. These (usually) provide autotests, and are submitted with 6991 give-crate. Weekly exercises will be released weeks 1-5,7-9 (inclusive), bringing a total of 8 weekly sets.

Note that we've also provided some week 0 exercises that are not assessed, and solely exist to help you make sure your Rust toolchain (whether working on CSE or at home) is working correctly, and get you started on some fundamentals.

Blog posts

In order to help recoup any lost marks from weekly exercises, we are offering "blog posts" for make-up marks! We hope they are a fun and rewarding activity, and you can read more about them here.

Difficulty

We would like to formally recognise that COMP6991 is a challenging course, with a relatively high workload. This will be spoken to further in the lectures, but if you are unsure whether COMP6991 is right for you, please send us an email to the course email address (see course outline).

--

Welcome to the course everyone :)

Zac