uwloo

MSE 121Introduction to Computer Programming

Units
0.50
Faculty
Engineering
Subject
Management Science and Engineering

When it runs

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

Ran in 4 of the last 7 terms. Winter 2027: not on the schedule. Spring 2027: schedule not out yet.

An introduction to computer programming using a high level programming language. Concepts and topics covered include the basic components of algorithms (primitive operations, variables, sequencing operations, conditionals/branching, repetition/loops, subroutines/functions), problem decomposition, abstraction, testing and debugging, pseudo-code, file based input and output, use of a modern development environment including a symbolic debugger, good coding style, pointers/references, and basic data structures (arrays, records, objects).

Prerequisites

Antirequisites

  • Complete all of the following
    • Not completed nor concurrently enrolled in any of the following:
      • BME121 - Digital Computation (0.50)
      • ECE150 - Fundamentals of Programming (0.50)
      • MTE121 - Digital Computation (0.50)
      • SYDE121 - Digital Computation (0.50)
    • Not completed any of the following:

Leads to

Fall 2026 sections

Enrolment from UW Open Data, which can trail Quest by up to two days. Instructors and rooms: Schedule of Classes.
SectionClassEnrolledMeets
LEC 0015380110 / 100MWF 12:30–13:20
MWF 12:30–13:20
Sep 15 13:30–14:20
Oct 6 13:30–14:20
Oct 20 13:30–14:20
Nov 10 13:30–14:20
Nov 24 13:30–14:20
LAB 1015379110 / 100M 09:30–11:20
M 09:30–11:20
TST 2015387110 / 100Oct 27 16:30–19:20

Reviewed on UW Flow

65% liked it69% easy81% useful

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

  • Sucks bc half the class are already pro coders. While others are just new to it. Really think its unfair how many others already know coding. You even see it in the grade distribution. Half the class was in the 90s, other half in the 60s. Found it interesting and useful but bc others had coded from high school, the content moves much quicker. Its pretty tough if youve never coded before.

    Jan 2020 · liked it · 1 found this helpfulOn UW FlowRemove this

  • The homeworks are 90% of the learning and take 4-9 hours a week. Do not chat them or u wont do good on the assessments.
    The quizzes and tests are actually hard sometimes and you are given limited practice material. My term, a few quizzes had class averages of 10-20%. You get the 2 lowest dropped though.
    The midterm had an average of around 50% and lots of people failed so do study even if you know how to code. All the assessments are actually about making you think and figure out how to solve a problem so its like either you get it or you dont. so sleep well on quiz days.
    Lecture content is not posted anywhere so you actually have to go to lectures to know what he wants and whats…

    Feb 2026 · didn’t like itOn UW FlowRemove this

  • This course was hard for me as someone who has never done programming before but I wouldn't say its hard to succeed in it once you get the concepts.

    Dec 2025 · didn’t like itOn UW FlowRemove this

  • Pretty easy course, all programming was VERY introductory, this can be ones first experience programming and theyll do just fine in this course.

    Nov 2025 · liked itOn UW FlowRemove this

  • I really enjoyed MSCI 121. I had Mark Smucker who was a great teacher. Lectures felt organized and cohesive. The homework assignments could sometimes be lengthly, but they really helped you with the exams. The exams were challenging, but you could tell they were custom made for our yeaf/offering of the course and included specific smaller details/topics from lectures/homework. Attending lectures was essential to doing well.

    Dec 2024 · liked itOn UW FlowRemove this

Discussed on r/uwaterloo

3 posts and comments in 3 threads mention MSE 121, April 2024 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

Probably failed mgte 1a term 17 points, 5 comments

u/Ok_Leadership_3733: “… Here’s some context: I took CHE102, MSE100, MSE121, MATH115, and MATH116. Unfortunately, I failed CHE102 and MSE121. However, I’m 90% sure my grades for MSE121 are incorrect due to extremely harsh grading by TA, compounded by other challenges I faced this term. …”

View on RedditRemove this

Spring 2024

1st yr Management Engineering Questions: 3 points, 3 comments

“This coming fall, I'll be joining MGTE. And I was wondering if anyone taking MGTE could answer these questions below: 1) How heavy is the coursework for first yr in general? …”

u/sickomoder: “… easier than the other eng programs in 1A since MSE 100 is free, MSE 121 is also free if you have any coding experience (learn python in the summer, just past loops and dictionaries, it'll take less than 20 hours and will help a lot). …”

View on RedditRemove this

Winter 2024

Questions for Management Engineering students: this program or UTSG CS? 1 point, 11 comments

u/KINGBLUE2739046: “- It’s an Engineering workload, it’s a lot better than ECE, much more time to do side projects, almost a joke honestly, other programs will be making fun of you for not being real engineers, no big …”

u/nyephe: “… They changed MSE 121/240 but I've never used Python in MGTE before (aside from MSE 446) R is pretty much just copy and paste from the MSE 251/253 tutorials but it's never tested I remember Excel being used in MSE 100/131/251/253/331/263/334/431/332/333/343, and this is only up …”

View on RedditRemove this

Check it elsewhere for Fall 2026

Calendar versions

Undergraduate Calendar