CS 135: Designing Functional Programs

Electronic Communication in CS135

CS135 uses the web, newsgroups and email extensively for communication. The kind of information conveyed with each varies:

  • The web site (which you are now reading) contains handouts, code, assignments, and other important information. It is actively managed and should be considered the primary source for up-to-date information.
  • Piazza is a forum optimized for asking questions and giving answers. We also use it for rapid dissemination of course-related announcements (though all important announcements will be mirrored on the Announcements page here).
  • Email is used for private communication between students and course staff. The same account is also used by many other people within University of Waterloo to communicate with you about important matters such as your status within your program.

It is important that you be able to use all three of these resources easily. The web should not pose a challenge (you are reading this, after all!). The rest of this page provides information on how to get set up to use email and Piazza as well as guidelines for using them.


Every UW student has an email address of the form userid@uwaterloo.ca. For example, bwbecker@uwaterloo.ca. This is managed through your WatIAM settings -- your Email forward (delivery mailbox) must have a valid entry (for example: userid@edu.uwaterloo.ca).

It is very important that you receive and read the email sent to this forwarding address regularly.

You may have already received information about UW email and may have taken steps to set it up. If so, please consider your past decisions in light of the advice provided here. You probably already have an email address that you use regularly to communicate with friends and perhaps parents. The goal is to make it easy to use all of your email accounts. There are three main options to consider:

  1. Ignore the problem and try to remember to check each account individually. In practise, this likely won't happen and we strongly advise you to not use this 'solution.'
  2. Forward the email from one account to the other one. In practise, this probably means forwarding your UW email to one of your existing accounts. This works well except for two issues:
    • We have noted that students often change email addresses. If/when you change, it's easy to forget that email is being forwarded and to then lose that mail.
    • More seriously, sometimes UW sends out similar email to a lot of students. To Gmail, Yahoo, and Hotmail, this looks like spam and, depending on settings, may not be delivered.
  3. Use an email client (program) such as Thunderbird or Apple Mail to read the mail from all of your accounts. They can be set up to consolidate all of your mail into a single mailbox or to keep each account separate. The disadvantage is that if you're not at your own computer, you need to use another approach such as a web interface to check your mail. GMail supports this option very well. Hotmail only supports POP3, an older protocol. It works, but not as slick as GMail. Yahoo requires a paid subscription for this feature.

Recommendation: We think that option #3 is the best way to go, depending on your current email provider.


Piazza Purpose

Piazza is a good way to discuss and ask questions about the course materials, including assignments, in a public forum. It enables you to learn from the questions of others, and to avoid asking questions that have already been asked and answered. It also provides a forum for course personnel to make announcements and clarifications about assignments and other course-related topics. Students are expected to read Piazza on a regular basis.

Enrolling in Piazza

You will be sent an invitation to your UW email address. It will include a link to a web page where you may complete the enrolment process.

Piazza Guidelines

Here are some guidelines that you should keep in mind when posting items to Piazza:

  1. Please remember that everything you post is public - everyone enrolled in CS 135 will be reading it. As a result, in any posts you make, do not give away any details on how to do any of the assignments. This could be construed as cheating, and you will be responsible as the poster.

    If you have questions about an assignment that require you give specific details of your solution, you may still post to Piazza, but check This is a private post - only visible to class instructors (and ISAs!). If the instructors and/or ISAs feels that posting it to everyone is appropriate, he or she will do so.

  2. Keep posts related to the course, concise, and topical. As students are all expected to read Piazza on a regular basis, try not to waste the time of readers.
  3. Please be diligent about attempting to find the answer before you post a question. Piazza includes excellent search facilities -- use them! Scan all of the questions that have already been asked. Better yet, read them along with the answers. You'll learn lots!

    This avoids duplicate questions, which are frustrating to everyone. It's more work to answer two questions than to answer one, there may be conflicting advice, students need to sift through more entries to find what they need, etc. Please do all you can to avoid duplicates.

  4. Make it easy for other students to find your question -- just in case they have the same question and want to see the answer!
    • Use a meaningful subject heading. "Help" and even "Help for A3P3" is not very meaningful. "Clarify parameter order for A3P3" 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.
  5. Please don't post things to the group that provide no useful information to readers. Posts like "I have the same question as this one just posted", or "I agree with this comment" serve no useful purpose, and waste people's time.
  6. Keep complaints about the course out of Piazza or mark them with the This is a private post - only visible to class instructors checkbox. 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 an ISA or the professor. Piazza is not a complaint forum.

Reading Piazza

After you've finished the sign-up process, simply go to http://piazza.com/class. You'll probably want to bookmark this in your browser. It's also in the Table of Contents on the CS135 web site.

Last modified on Thursday, 10 November 2016, at 15:30 hours.