uwloo

CO 331Coding Theory

Units
0.50
Faculty
Mathematics
Subject
Combinatorics and Optimization

When it runs

  1. F24
  2. W25
  3. S25
  4. F25
  5. W26
  6. S26
  7. F26
  8. W27
  9. S27

Ran in 2 of the last 7 terms. Winter 2027: scheduled, 2 lecture sections. Spring 2027: schedule not out yet.

A first course in error-correcting codes. Linear block codes, Hamming-Golay codes, and multiple error-correcting BCH codes are studied. Various encoding and decoding schemes are considered.

Prerequisites

  • Must have completed at least 1 of the following:
    • MATH225 - Applied Linear Algebra 2 (0.50)
    • MATH235 - Linear Algebra 2 for Honours Mathematics (0.50)
    • MATH245 - Linear Algebra 2 (Advanced Level) (0.50)

Antirequisites

None listed.

Leads to

No course lists it as a requisite.

Winter 2027 sections

Enrolment from UW Open Data, which can trail Quest by up to two days. Instructors and rooms: Schedule of Classes.
SectionClassEnrolledMeets
LEC 08156250 / 140Online or by arrangement
LEC 701227363 / 9999Online or by arrangement

Resources

Around the web

Found by uwloo’s link finder, which checks that each page names CO 331.

Suggest a resource.

Reviewed on UW Flow

76% liked it66% easy59% useful

From 37 ratings and 12 comments on UW Flow. The most helpful comments, quoted as written, without names. Read them all on UW Flow.

  • I'd recommend taking this as a fun math elective, especially if you're interested in seeing some neat real world applications of linear algebra and finite fields. The final exam was worth 80%, but was essentially computational. The ungraded practice problems, which were harder than the homework problems, were great practice for the huge final.

    May 2026 · liked itOn UW FlowRemove this

  • Interesting applications of linear and abstract algebra. Overall, very manageable and fair, but easier if you have some prior knowledge of field theory.

    May 2025 · liked itOn UW FlowRemove this

  • Boring. It's a pretty free class since there's no requirement to pass the final. The prof was helpful though

    Apr 2025 · didn’t like itOn UW FlowRemove this

  • Taken online W2024. Easier if you have taken PMATH347/348, but they're not needed. Pretty interesting course if you're interested in how bits of information are encoded to have some error-correcting capabilities.

    Apr 2024 · liked itOn UW FlowRemove this

  • Took this course online during Winter 2024. The content was interesting for the most part and provided a good introduction to the field of Coding Theory. Prior experience with rings and fields is helpful, although not needed. Assignments required time to digest the content but weren't too bad. The open notebook quizzes were all multiple choice and True/False. The in-person exam was worth 50%, but wasn't too difficult if you understood the main concepts.

    Apr 2024 · liked itOn UW FlowRemove this

Discussed on r/uwaterloo

45 posts and comments in 37 threads mention CO 331, August 2014 to December 2024. Quoted word for word, newest first; each reply sits under the post and the comment that started its branch. Search r/uwaterloo for newer posts.

Fall 2024

CO331 vs. AMath 250 for Co-op Term? 9 points, 6 comments

u/Silly-Airline-6049: “Hi, I need to take an online course during my co-op term and can’t decide between CO331 (Coding Theory) and AMath 250 (Intro to Differential Equations). CO331’s outline says the final exam is in-person and worth 50%, which might be tough during co-op. …”

u/sharkleaf70: “… If you end up choosing CO331 feel free to reach out cuz I’m also doing it on co-op next term (:”

u/amsyed10385: “… CO 331 is a harder course in my opinion. AMATH is a very standard course so there are lots of resources online to practice and understand the content. …”

View on RedditRemove this

Any CO course recommendations 4 points, 2 comments

“I’m in cs and pursuing a CO minor (pause) I took CO250 this term and I enjoyed the content, I looked at CO372 and it looks pretty interesting. …”

u/Early_Expert7427: “CO 331 was really good. I took it online with Alfred Menezes and I believe he’s offering it online next term. Alfred made the course insanely enjoyable, it is extremely well structured and the assignments were actually very interesting.”

View on RedditRemove this

CO487 Lecture Videos 4 points, 4 comments

“Anyone have a copy or know where to find lecture videos or content with Alfred Menezes?”

u/Silver-Place-8363: “Update: Prof Stebila Has an entire playlist for his own online lecs, just completely missed it. Personally I enjoyed Prof Menezes style and videos (from CO331 online)”

View on RedditRemove this

Workload for W25 HELPPP! 6 points, 3 comments

u/NoActivity436: “Do you guys think taking CO331, 353, 487 and AMATH342 in one semester is doable? I heard that most of the CO courses have a relatively heavy workload and am unsure about if I get to handle all these at the same time ;)”

u/SpiritedTie9025: “CO331 and CO487 should be okay, CO353 is super hard, I remember the top 5 students' score last year are 97, 93, 8x, 7x, 56. Which means most of the students can't get 60+. So consider more bro.”

View on RedditRemove this

Spring 2024

Enumeration-like courses 4 points, 4 comments

“I enjoyed the binary string part of math 239 and i’m wondering what future course (CO or other kind of theory courses) go more in depth into that or explore topics like that? …”

u/ftgxttg: “Take CO 331/487”

View on RedditRemove this

Fall 2023

Spring 2023

Fall 2022

Check it elsewhere for Fall 2026

Calendar versions

Undergraduate Calendar