CS 231: Algorithmic Problem Solving

Contact information

You can contact course personnel in lecture, office hours, and using Piazza, as detailed below. Please limit your use of email to personal issues that require private discussion; general questions should be posted to Piazza. Email to the IAs can be sent to cs231@uwaterloo.ca.

Note: If you decide to email course personnel, you must use your uwaterloo email account; otherwise we cannot verify who you are and are limited on what we can accept and respond to.

Whom to contact for various issues

Help Topic Contact
Assignment help: Piazza or office hours
Assignment remark: Email IAs
Assignment submission error: Describe your submission error in an email to IAs or post to Piazza. Keep trying to submit to Markus in the meantime. We do not accept e-mailed assignments.
Error in course website: Email IAs
Error in course slides or resources: Email course instructor
Error in mark entry: For assignments or midterms:Email IAs
Exam seating See instructions on the exams page
Lecture questions: Piazza or office hours
Midterm remarks: See instructions on the exams page
Missed assignment/midterm/final exam: Karen Anderson (CS 231 ISC)



Office hours

Exam Period Office Hours:


A discussion forum for the course has been set up on Piazza. Students often find it helpful to read questions posed by classmates and clarifications posted by course personnel. Please read the instructions and guidelines below before posting any questions.

Setting up your account

After the first day of lectures, an email from the Piazza Team will be sent to your uwaterloo email address. Please follow the steps provided below.

  1. Check your uwaterloo email account for the email from the Piazza Team. If the email is not there, then you may have changed your email settings to forward all your uwaterloo emails to another email account. If the email cannot be found in any of your email accounts, then please email cs231@uwaterloo.ca.
  2. The email will contain a link to activate your Piazza account and set your password. It is imperative that you provide your first and last name when creating your account so that we can easily contact you should any problems arise.
  3. After activating your account, you will be redirected to the CS 231 class discussion forum. Click on the drop down arrow in the top right-hand corner and click on Account/Email Settings. A dialog box will appear on the screen. Under "Preferences for Email Notifications", select "No Emails". It is important that "Real Time" is NOT selected; otherwise, you will receive an email every time another student posts on Piazza.

Using Piazza

To post a question on Piazza, click on "New Post" at the top of the page. You can choose to post a question or post a note. Use a question if you expect an answer, and a note otherwise.

On every question posted on Piazza, there is a students' response box where you can answer other students' questions or edit a previous response to include additional information. If you have followup questions on the original question, please use the followup discussions box.

Course personnel will be checking Piazza regularly to answer student questions and to monitor student behaviour on Piazza. Please read the guidelines below to avoid committing any offence while using Piazza.


Here are some guidelines that you should keep in mind when posting messages.

  1. Please remember that everything you post is public -- everyone will be reading it. As a result, in any posts you make to Piazza, do not give away any information about assignment solutions -- this could be construed as cheating. If you have questions about an assignment that require you to give specific details of your solution, visit office hours or send email to cs231@uwaterloo.ca. We have disabled the "anonymous" posting capability (although you will have the option of appearing anonymous to your fellow classmates but not to instructors).
  2. Please do not post any assignment code on Piazza, even as a private message. Visit office hours for any code-related questions.
  3. Limit posts on Piazza to those related to the course. Do not use Piazza for posting "test" posts or unrelated material.
  4. Make use of Piazza's excellent search facilities before posting a question. Please help keep Piazza from getting so cluttered with repeated questions that it becomes too cumbersome to be useful to you and your fellow students.
  5. Make it easy for other students to find your question.
    • Use a meaningful subject heading. "Help" and even "Help for a03q3" is not very meaningful. "Clarify contract restrictions for a03q3" is much better.
    • Tag your post with all the applicable tags. Start a tag by typing the hash character (#). A drop-down list of tags that are currently in use will appear. Use one of them, if applicable. If not, create a new one. However, any tag you create should be applicable to many posts, not just yours.
  6. Make sure that your post contains useful information. Posts like "I have the same question" or "I agree with this comment" serve no useful purpose, and waste people's time.
  7. Please keep complaints about the course out of Piazza. If you have a concern about anything to do with the course, the best way to deal with it, and to get results, is to take it to the instructor. Piazza is not a complaint forum.
  8. Please be respectful of your peers and others in your posts.