Skip to main content

Check Yourself

  • All labs together will be worth 2.5% of total grade.
  • Have you read tutorials page and set up either VM or have CSIL Access?
  • Have you read the linux section on the tutorials page?
  • Have you read the C section on the tutorials page?

  • Don't proceed without knowing how to run this program in a terminal
#include <stdio.h>
void main() {
  printf("Hello World");
}

Labs

WE DO NOT CONTROL SCHEDULING ANY REQUESTS FOR MOVING TO A DIFFERENT LAB HAVE TO GO TO THE ADVISOR OR SCHEDULER

  • Labs are designed to take approximately 1 hour minutes and should be completed in the lab section. Some labs will turned in via hardcopy, others online.

  • You will be assigned to specific lab sections and listed on the lab page. Please attend the lab zoom session that you are enrolled in; this is the only way to get credit for the lab attendance (and the lab itself if it is a handout).

  • When offered online, labs are graded on attendance.

  • Watch lab videos before the lab
  • Go over lab tasks before the lab
  • TAs will only guide, they will NOT work out the solution

  • The staff recommends always asking for help on labs when you need it, and to only request a check off when you have thought about the lab sufficiently and can have an informed conversation with your TA.

  • Each lab will contain questions you should be able to answer, even though we will not explicit ask them to give you points. If you are unsure of the answer to any of these questions you can ask for help.

What will be covered by the TAs

  • TAs will dedicate the majority of the time for lab tasks only.
  • TAs will walk through the slides (if any) and handouts.
  • Only towards the end of the lab will the TA reveal parts of the solution in the lab.
  • TAs will not be going over the pre-req that prior courses have outlined see here

Zoom Sessions

Sessions Head TA Zoom link Email
201 & 202 9:30-10:25 (TA will be available from 9:15) Aditya Prasanna zoom apa120@sfu.ca
203 & 204 10:30-11:30 Milad Hakimi zoom milad_hakimi@sfu.ca

The 201 session will have a hard-stop at 9:25 since the TA is also a graduate student and has to attend another course. If you wish to speak with the TA try to speak before (TA will be in session 15 mins before the lab) or schedule a regular OH. As always TAs will answer questions on piazza as well.

You will need to be authenticated by SFU when joining the zoom sessions. Zoom passwords would have been sent via email.

Handout Git Slides Prof. Vid. TA Prof. Tutorial
lab 0 link
lab 1 git pptx link TA Solution Tutorial GDB
lab 2 git pptx TA Solution
lab 3 git pptx link TA Solution
lab 4 Assignment 2 - Part 1 pptx link TA Solution Tutorial
lab 5 Assignment 2 - Part 2 link TA Solution
lab 6 git TA Solution Tutorial VENUS
lab 7 git pptx link TA Solution
lab 8 git pptx link TA Solution
lab 9 git pptx link TA Solution

CMPT-295 includes two types of git repos

  • _ Classroom-repos _ These require a clone link for creating the repo. Lab 0 and all Assignments will be delivered in this manner. These you will commit and push to github.
  • _ 24hr Public Repos _ Labs 1-10 will be delivered using public repos listed above. You can simply git clone them; links will cease to exist after 24hrs. ` You are not expected to push to these repos`.

Policies

  • READMEs in lab repos could be out-of-date. Always use links in table above.

By cloning the github repo you accept the following:

  • I have read, fully understand and will follow strictly course policies about academic integrity documented in course website and SFU website [1]. In particular, I will not:
  • Share my work with others, both before and after finishing this course.
  • Post my work in public repositories, both before and after finishing this course.
  • Plagiarize under any circumstance.

FAQ errors

  • cannot find cgdb For access to cgdb in 295. On either your VM or CSIL. See tutorials page for more info on modules.
# This step will only work if you followed the module instructions
$ module load cmpt295/cgdb
# OR if modules did not work. You can hardcode the path
# Add this to your ~/.bashrc if you do not want to do this 
# on each login
$ export PATH=/usr/shared/CMPT/courses/cmpt295/cgdb/bin:$PATH