CS 115Introduction to Computer Science 1
- Units
- 0.50
- Faculty
- Mathematics
- Subject
- Computer Science
When it runs
- F24
- W25
- S25
- F25
- W26
- S26
- F26
- W27
- S27
Ran in 7 of the last 7 terms. Winter 2027: scheduled, 2 lecture sections. Spring 2027: schedule not out yet.
An introduction to the fundamentals of computer science through the application of elementary programming patterns in the functional style of programming. Function definition and application. Tracing via substitution. Design, testing, and documentation. Recursive data definitions. Lists and trees. Functional and data abstraction.
Prerequisites
None listed.
Antirequisites
- Complete all of the following
- Not completed nor concurrently enrolled in any of the following:
- BME121 - Digital Computation (0.50)
- CIVE121 - Computational Methods (0.50)
- CS135 - Designing Functional Programs (0.50)
- CS137 - Programming Principles (0.50)
- CS138 - Introduction to Data Abstraction and Implementation (0.50)
- CS145 - Designing Functional Programs (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 completed nor concurrently enrolled in any of the following:
Leads to
Fall 2026 sections
| Section | Class | Enrolled | Meets |
|---|---|---|---|
| LEC 001 | 6151 | 84 / 92 | TTh 08:30–09:50 |
| LEC 002 | 6152 | 121 / 120 | TTh 10:00–11:20 |
| LEC 003 | 6519 | 119 / 120 | TTh 11:30–12:50 |
| LEC 004 | 6520 | 89 / 90 | TTh 13:00–14:20 |
| LEC 005 | 6521 | 96 / 92 | TTh 13:00–14:20 |
| LEC 006 | 6522 | 104 / 104 | TTh 14:30–15:50 |
| LAB 101 | 6153 | 32 / 32 | F 08:30–09:50 |
| LAB 102 | 6154 | 32 / 32 | F 08:30–09:50 |
| LAB 103 | 6155 | 32 / 32 | F 08:30–09:50 |
| LAB 104 | 5932 | 32 / 32 | F 08:30–09:50 |
| LAB 105 | 6506 | 31 / 32 | F 10:00–11:20 |
| LAB 106 | 6507 | 29 / 32 | F 10:00–11:20 |
| LAB 107 | 6508 | 28 / 32 | F 10:00–11:20 |
| LAB 108 | 6509 | 26 / 32 | F 10:00–11:20 |
| LAB 109 | 6510 | 32 / 32 | F 11:30–12:50 |
| LAB 110 | 6511 | 32 / 32 | F 11:30–12:50 |
| LAB 111 | 6512 | 31 / 32 | F 11:30–12:50 |
| LAB 112 | 6513 | 32 / 32 | F 11:30–12:50 |
| LAB 113 | 6514 | 31 / 32 | F 13:00–14:20 |
| LAB 114 | 6515 | 31 / 32 | F 13:00–14:20 |
| LAB 115 | 6516 | 32 / 32 | F 13:00–14:20 |
| LAB 116 | 6636 | 33 / 32 | F 13:00–14:20 |
| LAB 117 | 6637 | 31 / 32 | F 14:30–15:50 |
| LAB 118 | 6638 | 32 / 32 | F 14:30–15:50 |
| LAB 119 | 6675 | 30 / 32 | F 14:30–15:50 |
| LAB 120 | 9118 | 24 / 25 | F 14:30–15:50 |
| TST 201 | 6517 | 613 / 609 | Nov 2 19:00–20:50 |
Winter 2027 sections
| Section | Class | Enrolled | Meets |
|---|---|---|---|
| LEC 001 | 6113 | 0 / 260 | Online or by arrangement |
| LEC 701 | 2383 | 73 / 9999 | Online or by arrangement |
Resources
Around the web
Found by uwloo’s link finder, which checks that each page names CS 115.
- CS 115: Home Course website · student.cs.uwaterloo.ca Remove
- CS 115: Home Other · web.archive.org · posted on r/uwaterloo Jan 2022 Remove
- Suggested Course Sequence: 2014-2015 BCS | SCS | UW | Cheriton School of Computer Science Other · cs.uwaterloo.ca · posted on r/uwaterloo Mar 2016 Remove
Reviewed on UW Flow
27% liked it12% easy22% useful
From 2,309 ratings and 148 comments on UW Flow. The most helpful comments, quoted as written, without names. Read them all on UW Flow.
Racket is one of the most unclear, inaccessible, and idiotic languages ever created.
This was supposed to be an introduction to computer science, so someone explain to me why they would choose such a remote language. It is difficult to code in, not intuitive, and because no credible institution (outside of a few universities) uses it, you can't find good resources online, so you can't teach yourself, or clarify concepts.
I was also surprised how unresponsive the tutors are at UW.
Furthermore, I got yelled at when I went to the cs help center.
Do not take this course if you have little experience with coding and this is not a required course.Oct 2022 · didn’t like it · 4 found this helpfulOn UW FlowRemove this
so difficult for beginners
Oct 2020 · 4 found this helpfulOn UW FlowRemove this
The only way to do bad in this course is by not managing ur time properly. This is a mistake I made when we had to work with modules. As long as u properly manage ur time and do assignments and concept checks well before the due date, you will have a great time in this course. Also try finding connections between assignments and try finding some real world applications of racket. Trust me Racket is very useful. The only criticism I have of this course is how the course is taught because it wasn't taught. (this is when I did online.) I had to understand all concepts by myself by basically reading texts. Although There was plenty of opportunity like office hours to ask for help, I only…
Dec 2021 · liked it · 3 found this helpfulOn UW FlowRemove this
It's the worst course ever, online especially. They are least interested to teach. They just provided the content to read by ourselves. I wouldn't suggest anyone to take this course online.
Apr 2021 · didn’t like it · 2 found this helpfulOn UW FlowRemove this
The education quality is significantly impaired with no doubt since we are doing it online. Reviews before COVID was mostly positive. But after COVID-19, a lot of them are negative. I think that reflects something. Assignment were thrown into your face like you just have one class for the whole term. For me, I believe the material we learn and the assignment we need to do is inconsistent in terms of difficulty level. The gap between them is just huge. It often took me eight to twelve hours to finish the assignment. Don't take this if you are doing online.
Dec 2020 · didn’t like it · 2 found this helpfulOn UW FlowRemove this
Discussed on r/uwaterloo
1,454 posts and comments in 932 threads mention CS 115, April 2011 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
chat am i cooked 6 points, 5 comments
u/Agitated_Inflation77: “honours math student - got a 46 on cs 115 and a 54 on math 137. what are my options/next steps for 1b?”
Failed 1 course with 2 withdrawal out of 5 during 1A, 25 points, 7 comments
“Honours Math student, failed an elective course, withdrawal Math137 and CS135, and also a Math135 that’s between 50% and 60%. Probably retaking the whole term in 1B. …”
u/Realistic-Stomach956: “… Also if you do decide to stay here I would recommend taking cs 115 instead of 135, you learn the same content but the assignments were so much more manageable and scoring really well on that is way easier. best of luck to you and don't beat urself up !! …”
Failed CS 135 54 points, 28 comments
“Grades just came out and I got like a 46 final on CS 135. I’m extremely disappointed and lowkey considering switching out of CS. Came into 1A with high 90s in highschool. …”
u/davidnguyen55535: [deleted]
u/Famous_South_2519: “How do you do a regrade request? I got 46 on my cs115 final”
46% on CS115 Final 4 points, 7 comments
u/This_Faithlessness26: “I just got my CS115 mark back and it turned out to be a 46. I heard it’s the default mark if you didn’t meet the weighted exam average. Is that true or is it possible that they made some sort of error? …”
u/Radiant-Science36: “Yes, it generally means you did not meet the weighted average for exam. You can book an appointment with your professor to see your exam in the first week next term and request remark if you find …”
u/chubbunii: “since exam viewings are after classes start should i add cs 115 to my schedule next term in case? or should i just remain in 116 for now”
46 percent in cs115 6 points, 7 comments
u/FunRecommendation298: “I got a 46, is there any way they could round up to 50? Has anyone every been Able too? I need to pass this course and I had passing grades until before the exam, where I struggled due some miscommunications about The amount of time I had”
u/iamanaybaid555: “46 is a default mark you get if you didn’t meet the exam requirement. I don’t think it’s reflective of the actual mark you got.”
u/CSplays: “You probably wouldn’t want to do that anyway. But, cs 115 is a requirement cs116”
Feeling lost and embarrassed 29 points, 14 comments
“I’m a CS major with 0 prior programming experience, only getting in because of my love for math. I decided to drop CS135 to 115 after struggling in order to grasp the concepts at a slower pace. …”
u/Big-Ship4494: “Relax - You're doing fine - I and a few of my friends were in a similar position in 1st yr - cs 115 -> 116 -> 136 is fine - we did it and we're fine - I'm in 4th yr now and it gets btr tbvh - I'm ngl it doesn't get easier immediately and sometimes it'll feel like the end of the …”
u/mmimetamorphosis: “it isn't the end of the world, there's literally a recommended course sequence for students who take CS115 and CS116 and you still graduate on time. …”
u/Informal-Layer2241: “… i took cs 115, then cs 116, then cs 136 over the summer. to be honest, im super happy it worked out this way. 116 allowed me to learn python, and i liked the way the lessons were structured. it was nice having a bit of time to get my feet under me. …”
u/EmotionalYesterday39: “its not ur problem cuz cs115/135 is just a shitass course imo, stuff you learned isn't gonna prepare you for future courses nor careers.”
Anyone have experience going from cs115 to cs136? 2 points, 4 comments
u/murkyy_rat: “I was talking about going directly from 115 to 136 with one of the ISAs and they said its still a tricky thing to do. Has anyone done this and what are your thoughts on it?”
u/Fun_Advertising_6604: “… cs 115 is one of the least of my worries, then cs 136 was my biggest worry by far. …”
Finals Dresscode 53 points, 6 comments
u/Inevitable_Ad3623: “Am I allowed to walk in the exam room with my furina cosplay? Its cs 115 if it matters”
u/atlasoftheplanets: “You absolute madlad you actually did it”
u/atlasoftheplanets: “Unless there was another Furina cosplayer at CS115 final then yeah 🫡”
Make-up exam for CS115 final 1 point, 3 comments
Failed cs115 15 points, 4 comments
u/Deep-Apartment9323: “I want to kms I didnt expect the exam to be 99% recursion and failed without a doubt. What’s next? Do i take the course again next term? When do i take cs 116?”
u/skatertomato1: “I failed cs115 in my 1A too but it felt like nobody else did😭”
CS 115 Final be like: 18 points, 2 comments
u/atlasoftheplanets: “Abstract list functions: are we a joke to you”
CS 115 be like 1 point, 0 comments
Check it elsewhere for Fall 2026
- Undergraduate Calendar, 2026–27The official entry
- Requirements for Fall 2026Waterloo’s requisite checker
- Schedule of Classes, Fall 2026Instructors, rooms, live seats
- Quest Class SearchWhere you enrol
- Course outlinesSyllabi from past terms (UW login)
- UW FlowStudent ratings and reviews
- WClassesPast sections back to 2004, and who taught them