-
Notifications
You must be signed in to change notification settings - Fork 48
Instructions for CS2030(S) Final Exam
The Final Exam will be held on Mon, 30 Nov 2020, from 5pm to 7pm (Singapore Time). This will be synchronous, ie. everyone will start and end at the same time (except those who have been granted extra time).
You will use the Fedora-SoC ISO for the Final Exam. This is still the best choice: it is secure, and automates many tasks for students and instructors. For proctoring, you will set up a separate laptop or phone that allows the invigilator to monitor you via Zoom. See Proctoring Protocol. The Fedora-SOC ISO does not have Zoom, and is only meant to display the exam questions and accept your answers. On this Zoom device, also set up Microsoft Teams as a backup, in case Zoom fails.
This Zoom device also functions as a communication tool with your invigilator. Thus, please enable audio so that you can hear announcements. If you wish to ask questions, use Zoom chat to privately message your invigilator.
The Fedora-SOC ISO automates the following tasks:
- Connects you via VPN to the SOC network, and to your usual PE node.
- Periodically backs up your files to your PE node (so that in case of hardware/network failure, you may resume your work with minimal loss).
- Performs screen capture (so you don't have to use ffmpeg or VLC).
- Displays the exam questions, and allows you to browse Java docs.
- Allows you to type in your answers into one or more text files, via the editor.
- Allows you to check the exam time that has elapsed.
- Uploads all your files and the screen capture video when the exam is over (you need to trigger this manually).
- Uploads them to a Gmail account for redundancy.
- Displays a QR code as confirmation of a successful upload (you should take a picture of this QR code, for troubleshooting if necessary).
The Fedora-SOC ISO does not use your webcam, and thus you need to set up a Zoom device for proctoring and for communication. Also, it does not save any files on your laptop; instead, it saves them on your PE node.
You have to use the latest version of the Exam ISO, download below. Please refer to Creating the Fedora SoC bootable USB Stick if needed.
- Read the NUS Computing E-Exam Standard Operating Procedure (SOP).
- Prepare a thumb drive to install the Fedora-SOC ISO.
- If the Fedora-SOC ISO has problems using your Macbook wifi, please borrow a USB wifi dongle from the School.
- Obtain all other equipment you may need, such as USB hub, USB Type C adaptor, etc. The School will not provide.
- Participate in the Mock Exam on Fri, 20 Nov at 4pm, which is a "full-dress rehearsal", simulating the actual exam condition. This will take approx 20 mins. You will answer some questions, but they won't count towards your final grade.
- If you need help to set all these up, please attend a Help Clinic on Wed 18 Nov (exact time to be announced in Luminus).
- Setup all the necessary equipment and start the Zoom session around 4.30pm. The invigilator will take attendance. You will need to show your Student Card on Zoom.
- Boot into the Fedora-SOC ISO, adjust the font size, login to VPN, but stop at the step to connect to your PE node.
- Your PE node will only open at 5pm, so you cannot connect any earlier. Wait for your invigilator to give you the go-ahead to login.
- Take the exam.
- Use Zoom chat to communicate with your invigilator.
- Listen out for any announcements on Zoom audio.
- When you have finished, manually trigger the "end-pe" process, which will perform the uploads of your files.
- Wait for the confirmation QR code. Take a picture of the QR code, for troubleshooting.
- If you do not see the QR code, do not power down your laptop!! It is busy attempting to upload your files, which may take a while due to network congestion. Please be patient.
- In case of any hardware/network/software failures, immediately inform your invigilator, who will advise you what to do. Do not panic. In case Zoom fails, use Microsoft Teams (on your phone).
Peer Learning
Codecrunch Contributions
Piazza Contributions
Wiki Contributions
Guides
Setting Up Checkstyle
Setting Up Java
Setting Up MacVim
Setting Up Sunfire
Setting Up Unix For Mac
Setting Up Unix For Windows
Setting Up Vim
Setting up SSH Config
CS2030 Contents
Lecture 1 SummaryCompile-run vs Run-time Summary
Quick Guide To Abstraction
Generics and Variance of Types
Comparable vs Comparator
Summary of completable future
CS2030S Notes
ELI5 Optional.map vs Optional.flatMap
PECS Example Code
Java Collection Framework (Iterator)
Generic
Generic Type Parameter and Generic Wildcard
Calculator
Lambda-Expression
Single Abstract Method (SAM)
Method Reference
Functional Interfaces 2
Simple Usage of Sandbox
Associative-but-not-commutative
Higher Order function
Functional Programming
Calculator With Functor
Eager Evaluation VS Lazy Evaluation
Simple Usage of Lazy Evaluation
Lazy Evaluation for LazyList
Lazy Evaluation for BinaryTree
Stream
Parallel Stream
Optional
Simple Usage of Stream
Asynchronous Programming
Notes on CompletableFuture
Notes on CompletableFuture 2
Simple Usage of CompletableFuture
Mind Map
Exception Handling
Links
CS2030 Java Style Guide
CS2030 Javadoc Specification
JDK 11 Download Link
JDK 11 API Docs
Codecrunch
Piazza Forum