Course-Info
Course Info
Official course outline. See sidebar (on right) for many details.
Getting Extra Help
Some great ways to get extra help are:
- Discord
Connect with classmates, TAs and instructor in real-time. Has text chat and voice/video conversations. If you are new to using discord, see this short video on intro to using Discord. Link to join Discord server in sidebar on the right of this page. Note: Piazza is hosted outside of Canada; it is not mandatory to use. - Piazza discussion forum
Check out classmate's questions and answers. Answer someone else's question, or ask your own. You can even post anonymously! Link in sidebar on the right of this page. Note: Piazza is hosted outside of Canada; it is not mandatory to use. - Office Hours
Both the instructor and TA have office hours. Great for discussing bigger issues, or personal concerns. Details in sidebar (right). - Email
Less efficient than Piazza, but private. Great for private questions about grades or extension requests. Please include course number email's subject line.
See sidebar for email addresses.
Grading
All submissions done via CourSys:. Also shows you your marks and marking feedback.
- Assignments (40%) - ~5 assignments. Assignment grades limited by quiz scores (see below).
- Quizzes (35%) - During class time. Covers guides, lecture, assignments.
- Project (25%)
Assignment Scores Limited by Quizzes
Assignments are very heavily weighted in the class. There are a number of excellent ways that students can get help to succeed on assignments; however, these aids can be relied on too much which can limit a student's learning (such as using ChatGPT for virtually all code, or freeloading if working in a pair). Therefore, students will be tested after each assignment to ensure they have learned the expected knowledge and skills from the assignment. Students who do well on the quiz earn the ability to score top marks on the assignment; students who do poorly on the quiz will not be able to score high marks on the assignment.
Here are the details:
- There will be an in-class quiz shortly after each assignment is due. It will focus on the learning outcomes for that assignment, along with the content from lecture modules related to the assignment.
- The quiz for an assignment is not only worth marks in the course, but also it limits or bounds the maximum mark a student can get on that assignment.
- The following principles are used:
- Students who do very well on the quiz (80% or better) have demonstrated strong competency with the material which unlocks the ability to earn a very high score on the assignment. One does not have to score perfect on the quiz to unlock a possible perfect score on the assignment.
- Students who do very poorly on the quiz (10% or less) have not shown sufficient mastery of the material to score more than a passing mark on the assignment (half marks).
- The figure below shows the maximum grade a student can earn on an assignment based on the quiz score they earned for the quiz related to that assignment.
- Quiz score >= 80%: maximum grade of 100% on the assignment.
- Quiz score <= 10%: maximum grade of 50% on the assignment.
- Between 10% and 80%, linearly scale maximum assignment grade between 50% and 100%.
Policies
- Assignment Late Policy
Assignments may be turned in up to 3 days late with 0% penalty. Later than this is 100% penalty (60 minute grace period). Contact the instructor if there are extenuating circumstances. - Extensions and Deferrals
Email Dr. Brian with your request. You may need to complete and email SFU Academic Concession Self-Declaration Form. Doctor's notes are usually not required. Extensions only considered for circumstances beyond the student's control; plan to submit assignments on time. - Academic Honesty
- The MOSS tool will be used to check the originality of all electronic submissions.
- SFU's Academic Honesty policy is crucial to earning credit in this course. Violations of the policy will be taken seriously and reported to the department and university.
- Explanation of penalties applied for academic dishonesty.
- AI Policy
- Students may use AI tools (such as GitHub's Copilot, or ChatGPT) to support their programming.
- You must do the high-level design yourself and be able to write all submitted code on your own (even if you used help from the AI).
- You should use the AI to code no more than a few lines at a time: do not have it write all lines of code.
- You must add a comment to any functions that you used the AI's help to write more than 5 line of code.
- Code written exclusively by, or with the help of an AI system is still governed by the academic honesty policies of the course and university. If a significant number of lines of code, or detailed/critical code is found not to be the student's work, then that work will get a zero. If the copied code was not cited correctly (from either a human or AI source) then it will be considered a case of academic dishonesty and the entire assignment may get a grade of 0 and a report on file with the university.