uwloo

CS 114Principles of Computing for Science

Units
0.50
Faculty
Mathematics
Subject
Computer Science

When it runs

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

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

Introduction to basic imperative programming principles; programming concepts including functions, flow control, lists, arrays; numerical accuracy and efficiency; data analysis and general-purpose algorithms. Introduction to object-oriented programming concepts.

Prerequisites

None listed.

Antirequisites

  • Complete all of the following
    • Not completed nor concurrently enrolled in any of the following:
      • BME121 - Digital Computation (0.50)
      • CHE120 - Computer Literacy and Programming for Chemical Engineers (0.50)
      • CIVE121 - Computational Methods (0.50)
      • CS116 - Introduction to Computer Science 2 (0.50)
      • CS135 - Designing Functional Programs (0.50)
      • CS136 - Elementary Algorithm Design and Data Abstraction (0.50)
      • CS137 - Programming Principles (0.50)
      • CS138 - Introduction to Data Abstraction and Implementation (0.50)
      • CS145 - Designing Functional Programs (Advanced Level) (0.50)
      • CS146 - Elementary Algorithm Design and Data Abstraction (Advanced Level) (0.50)
      • ECE150 - Fundamentals of Programming (0.50)
      • ME101 - Introduction to Mechanical Engineering Practice 2 (0.75)
      • MSE121 - Introduction to Computer Programming (0.50)
      • MTE121 - Digital Computation (0.50)
      • NE111 - Introduction to Programming for Engineers (0.25)
      • SYDE121 - Digital Computation (0.50)
    • Not completed any of the following:
    • Not open to students enrolled in programs offered by Faculty of Mathematics

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 001642389 / 100TTh 14:30–15:50
LEC 002642480 / 100TTh 10:00–11:20
LEC 003670177 / 100TTh 11:30–12:50
TUT 101642560 / 75F 10:30–11:20
TUT 102642660 / 75F 11:30–12:20
TUT 103593158 / 75F 12:30–13:20
TUT 104650468 / 75F 13:30–14:20
TST 2016505246 / 300Oct 26 19:00–20:50

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 00161630 / 120TTh 08:30–09:50
LEC 701238882 / 9999Online or by arrangement
TUT 10161640 / 60F 10:30–11:20
TUT 10262230 / 60F 11:30–12:20
TST 20161650 / 120Mar 1 19:00–20:50

Resources

Around the web

Found by uwloo’s link finder, which checks that each page names CS 114.

  • CS114 Course website · Fall 2026 · student.cs.uwaterloo.ca Remove

Suggest a resource.

Reviewed on UW Flow

56% liked it42% easy68% useful

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

  • Gregor Richards might be the end of me. I've taught Python before, and I genuinely have no clue why he taught it like he did. I can not see anyone actually learning from his lectures. Midterm average was a 41% so he emailed everyone in the course and said we suck

    May 2026 · didn’t like it · 1 found this helpfulOn UW FlowRemove this

  • As someone who took it last term but withdrew (because I had no coding experience and awful anxiety), I can say that it is an extremely rewarding course WHEN you stay on top of stuff. KEEP UP with content & assignments which requires constant, but low effort. You need to get 50% for assignments and midterm + final separately to pass, but you should be easily be able to get (quite high) on assignments. Coding gets exponentially harder and less rewarding when procrastinating or behind due to small mistakes from lack of practice SO STAY ON TRACK!!!

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

  • Not a great experience

    Oct 2024 · didn’t like it · 1 found this helpfulOn UW FlowRemove this

  • The course is useful to help kickstart your journey into learning CS and building skills, but the exams do not equal the coursework at all and the course itself is an absolute grind.

    Nov 2026 · didn’t like itOn UW FlowRemove this

  • Took this W26. In class content does not reflect what is being tested on the midterm. The class average for the midterm has always ranged between 40-50%. Do not take this class unless you have to.

    Apr 2026 · didn’t like itOn UW FlowRemove this

Discussed on r/uwaterloo

35 posts and comments in 28 threads mention CS 114, July 2021 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

Spring 2024

is it a dumb idea to do a cs elective 17 points, 13 comments

“hii i’m an incoming arts student and i’ve always been interested in computer science but haven’t really given much time to learning anything, and i heard that the cs courses are introductory, so …”

u/batson2002: “… there are easier courses designed for non math/cs students such as cs105/114 or you could try out the easier cs course math students take (cs115). …”

View on RedditRemove this

PHYS 249 Advice/Notes 1 point, 3 comments

“I'm taking PHYS 249 in the fall and I heard it's a pretty tough course. Anyone wanna share their notes with me, or some advice to do well?”

u/singabouttragedy: “I took 249 the first year it was offered (with James Taylor). It's honestly less difficult and more disorganized lmao- I didn't like it much. …”

u/NoThisIsPatrick-1671: “Do you know if there's gonna be a lot of coding? I know CS 114 was a pre-req but coding isn't really my strong suite”

View on RedditRemove this

Connecting with a current Physics student at Waterloo 5 points, 6 comments

“I was wondering if there is a current Waterloo student studying physics who could answer some questions I've been having after being accepted to the program. …”

u/eranand04: “1.Research 2.There are research jobs for upper years. Your first coop is likely software/data stuff 3.If u want money go for condensed matter or quantum information/computing. …”

u/eranand04: “Most of my friends who got those roles have taken cs courses beyond cs114 & phys 249(required for all physics majors) A master is good enough for most industry jobs, they're looking for experimentalist($$$) most likely. And for that purpose many ppl I know go for IQC coops”

View on RedditRemove this

Winter 2024

Fall 2023

I failed, is there anything i can do? 1 point, 14 comments

“So i failed a course with a 46% Is it possible to email the prof and ask them to possibly round up to 50 or do u guys think thats crazy… idek if thats possible for them to do at this point since the …”

u/Zealousideal_Day3646: “is this for cs115 or cs135?”

u/Jaded-Bicycle-425: “Cs114😭 its supposed to be easy but i hate coding i just wanted to finish this course and be free of it😔”

View on RedditRemove this

Cs 234 1 point, 2 comments

“Is the prereq just cs136 or cs136 with 60% + ? Sorry the language on the website was a bit ambiguous so asking here.”

u/Laeriana: “… this comment), the 60% seems to be the minimum grade requirement for those who have taken CS 114 and want to use that course as their chosen CS 234 pre-requisite (with a seeming additional requirement for them to take either CS 115 or 135 if that is the case). …”

View on RedditRemove this

Spring 2023

Winter 2023

Question for Physics & Astronomy Students 1 point, 8 comments

“Hello, I’m a student in grade 12 going into waterloo’s Physics & Astronomy program, and I was just wondering about the computer science course that I have to take in first year, i heard that its in …”

u/chickennalfredo: “… CS 114 was absolute hell until I actually went to office hours (strongly recommend). I did okay overall and I don't think my minimal experience of grade ten coding (during COVID, no less) said anything about it, so you could probably just go into it with no coding experience. …”

View on RedditRemove this

Check it elsewhere for Fall 2026

Calendar versions

Undergraduate Calendar