Correction
Week 12 Monday 19:48:00That should be a little over thirteen hours from now, sorry!
Zac
Final exam starting tomorrow morning (09:00)
Week 12 Monday 19:45:00Hi everyone!
Your final exam will be commencing in a little over thirteen hours from now, at 09:00 Sydney time. I will release the exam at 08:55 to give everyone a chance to load the paper before the official starting time at 09: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 09:00.
The exam will be accessible at https://cgi.cse.unsw.edu.au/~cs6991/current/exam/ at 08:55. The URL will 404 until 08:55.
The exam is three hours, and so will conclude at 12: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 cs6991.exam@cse.unsw.edu.au. 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: 2024-11-26 09:00:00
Finishing time: 2024-11-26 12: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: 2 (20 marks)
Total number of theoretical programming questions: 5 (50 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 and OpenAI ChatGPT.
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:
- Stop working on the exam and take note of the time
- Contact us immediately, using cs6991.exam@cse.unsw.edu.au, and advise us that you are unwell
- Immediately submit a Special Consideration application saying that you felt ill during the exam and were unable to continue
- 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:
- 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:
- By using VSCode (with SSH-FS extension): https://www.cse.unsw.edu.au/~learn/homecomputing/vscode/
- By using SSH: https://taggi.cse.unsw.edu.au/FAQ/Logging_In_With_SSH/
-
If you are using VSCode remote-ssh:
Try disconnecting VSCode, and then changing the URL from
vscode.unsw.edu.au
tovscode2.unsw.edu.au
. - If you are using SSH: Try disconnecting SSH and reconnecting again.
- 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
- Contact should be made immediately to advise us of the issue at cs6991.exam@cse.unsw.edu.au
- A Special Consideration application should be submitted immediately after the conclusion of the assessment, along with the appropriate screenshots.
Weekly exercises deadlines
Week 10 Friday 15:35:00Just a quick one -- since there were some intermittent instamark issues in the last couple of weeks, and with today's outage in mind, I've also extended your week 8 and week 9 weekly exercises to be due next week Wednesday at the usual time.
Note that there are no weekly exercises in week 10!
Zac
CSE Outage, Assignment 2, Emails
Week 10 Friday 15:15:00Hey everyone!
I've been made keenly aware of a nasty CSE outage today -- pretty choice timing... It seems like systems and services are back up and running now, but as we have learned from this course, sometimes fixes end up temporary!
To play it safe, I will extend the deadline for assignment 2 to the same time tomorrow. That is, the deadline is now Saturday 16 November 17:00:00. If you have any extensions, they will be applied on top of that extended deadline. The standard 5 day late penalty will still follow after whatever your deadline is.
I will personally be going through the whole cs6991 inbox late tonight. If you are waiting on a response to an email (I've been told our backlog dates to Monday / Tuesday), you should expect to see a response before tomorrow morning.
For the specific case of ELS provisioned extensions, note that those will all be unconditionally approved. We will still respond to your email, but please don't pre-emptively stress about anticipating any question of it!
Thanks all!
Zac
FYI large email load
Week 7 Tuesday 23:00:00Hi everyone!
Just a short announcement to let you know that we are receiving a large number of emails currently!
We are slowly working through them and will get back to you over the next few days.
If you haven't recieved a reply by Thursday night, please follow up in your original email thread!
Reminder - in order to get faster replies, please email the course account only (cs6991@cse.unsw.edu.au)
- and avoid course staff personal emails (i.e. Zac, Myself, Tom).
Thanks Shrey (~cs6991)
Online lecture starting soon
Week 5 Wednesday 15:20:00Hi everyone!
The online lecture (making up for Monday's public holiday) is starting in approx. 40 mins at 16:00. You can access the live stream (or the recording afterwards) here: https://youtu.be/SqB9-liBiYI.
There is a live chat available for you to ask questions (or heckle) during the stream. Questions you think of later (or while watching) the recording are most welcome on the course forum :)
Hope to see you there!
Zac
Help Sessions
Week 4 Monday 13:50:00Hi everyone!
We are pleased to announce that help sessions will be starting from today onwards! There will be 4 sessions running each week, for 2 hours each:
- Monday 16:00 - 18:00 [F2F] (Kobi and Kaiqi)
- Wednesday 18:00 - 20:00 [F2F] (Shane and Zac)
- Thursday 11:00 - 13:00 [F2F] (Alex and Vincent)
- Friday 17:00 - 19:00 [Online] (Peter and Tetian)
They will run from this week (starting at 4PM today) all the way until the end of week 10 (including week 6 along the way)!
The F2F rooms are still TBA, so until a further announcement, all four weekly help sessions will be running online.
The online help sessions will take place in our COMP6991 Discord server. Due to a confusion with the invite URL, it has recently changed. If you are part of the online workshop, please use this new URL instead for your ongoing workshops.
Here is the invite URL: https://discord.com/invite/f4hNSpeVpz
Your help session tutors will send a queueing message in the
#help-session-general
text channel at the start of the
allocated time. They will request for you to click on a reaction button
on that message to join the queue, and then you can join the
help-session-waiting-room
voice channel to wait for your
turn. When it is your turn, you will be pulled into a private room with
a tutor for some 1:1 help!
If you have any questions, please let us know on the course forum!
Cheers,
Zac
Lectures cancelled this week
Week 3 Monday 15:15:00Hi everyone!
I've unfortunately spent the weekend and today quite sick. Although I was hopeful I would recover enough to join our lectures this week (or at least replace them with an online live-stream), I've lost my voice and my throat is too sore to communicate effectively.
I have double-checked, and the 22T3 YouTube lectures are good quality covering the same content, so we will defer to those for this week.
I have timestamped these URLs so they kick off where the actual content begins.
I wish that I could be there presenting it live and answering your thoughtful questions, but these things happen. Maybe later next week I can find some time to hop into a CSESoc voice call to discuss Rust, the course, and answer questions for a couple of hours with you all, to try to (partially) make this up -- well, if that's something some of you would be interested in :)
Please let me know if you have any troubles accessing the make-up lectures, and I will keep a close eye on the "Lectures" category of the course forum over the next week to help discuss and answer any questions that might arise.
Hope you all stay safe and have a great week!
Zac
Welcome to COMP6991
Week 1 Monday 09:00:00Welcome everyone to the fifth 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/24T3/. This will also link you to the course outline, the course timetable, and the course forum. This course does not use WebCMS3 nor Moodle (except to access Echo360 recordings).
Lectures
Our first lecture starts Monday week 1
(2024-09-09 18:00:00
). The lectures are from 6:00pm -
8:00pm on both Mondays and Tuesdays each week (except week 6, and a long
weekend in week 5). 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 F10 June Griffith M18 (K-F10-M18) on Mondays and Colombo Theatre A (K-B16-LG03) on Tuesdays. 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 Wednesdays, Thursdays, 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!
We have one online workshop stream this term, which will be hosted on the Discord instant messaging / VoIP platform. The course discord URL can be found on the timetable page. Do note that the course Discord is not intended for general conversation -- the CSESoc Discord seems to already serve that purpose well.
Our team
Our teaching team this term consists of:
- Aaron Manning
- Alex Miao
- Daniel Chen
- Daniel Field
- Eric Cai
- Ethan Dickson
- Fritz Rehde
- Hussain Nawaz
- Jaden Lanceman
- Jared Lohtaja
- Kaiqi Liang
- Kobi Beckett
- Matthew Kokolich
- Mitchell Wood
- Peter Derias
- Shane Kadish
- Shrey Somaiya
- Tetian Madfouni
- Tom Kunc
- Vincent Nguyen
- Wisesa Resosudarmo
- Xavier Carey
- Zachary Ecob
Wow, so many tutors this term!! 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.
Weekly exercises have a 0% late-penalty for one week, before
immediately increasing to 100% on the 7 * 24
th hour. Note
that all weekly exercises must be submitted before the end of term
(Friday week 10) to be eligible for marks, meaning the final marked
exercises (week 9) don't get the full week of a 0% penalty.
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