uwloo

CS 136LTools and Techniques for Software Development

Units
0.25
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 7 of the last 7 terms. Winter 2027: scheduled. Spring 2027: schedule not out yet.

This course introduces students to tools and techniques useful in the software development lifecycle. Students learn to navigate and leverage commands and utilities in the Linux Command Line Shell. Students gain experience in version control software, writing scripts to automate tasks, and creating effective test cases to identify bugs. Tracing and debugging strategies are discussed. Students also gain experience in using built-in support for version control, testing, debugging, build automation, etc. in integrated development environments (IDEs).

Prerequisites

  • Complete 1 of the following
    • Must have completed the following:
      • CS145 - Designing Functional Programs (Advanced Level) (0.50)
    • Earned a minimum grade of 90% in each of the following:
      • CS115 - Introduction to Computer Science 1 (0.50)
    • Earned a minimum grade of 70% in each of the following:
      • CS116 - Introduction to Computer Science 2 (0.50)
    • Earned a minimum grade of 60% in at least 1 of the following:
      • CS135 - Designing Functional Programs (0.50)

Corequisites

  • Completed or concurrently enrolled in at least 1 of the following:
    • CS136 - Elementary Algorithm Design and Data Abstraction (0.50)
    • CS146 - Elementary Algorithm Design and Data Abstraction (Advanced Level) (0.50)

Antirequisites

None listed.

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
LAB 001655340 / 65Th 14:30–15:50
LAB 002655434 / 65Th 11:30–12:50
LAB 003787718 / 65Th 13:00–14:20

Winter 2027 sections

Enrolment from UW Open Data, which can trail Quest by up to two days. Instructors and rooms: Schedule of Classes.
SectionClassEnrolledMeets
LAB 00161360 / 65T 09:30–10:20
LAB 00261370 / 65T 10:30–11:20
LAB 00361380 / 65T 11:30–12:20
LAB 00461390 / 65T 12:30–13:20
LAB 00561400 / 65T 13:30–14:20
LAB 00661410 / 65T 14:30–15:20
LAB 00761420 / 65T 15:30–16:20
LAB 00861430 / 65Th 09:30–10:20
LAB 00961440 / 65Th 10:30–11:20
LAB 01061450 / 65Th 11:30–12:20
LAB 01161460 / 65Th 12:30–13:20
LAB 01261930 / 65Th 13:30–14:20
LAB 01361940 / 65Th 14:30–15:20
LAB 01461950 / 65Th 15:30–16:20
LAB 7012385898 / 9999Online or by arrangement

Resources

Around the web

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

Suggest a resource.

Reviewed on UW Flow

73% liked it74% easy88% useful

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

  • You get a lot of people saying this course sucks since it is in edX etc, but personally, it hasn't been too bad. Other than the ****show of lab 3 with the academic integrity violations (and lab 3 in general).... all the other labs were doable in < 2 hours.
    What really drives this home is that I find the instructors are genuinely nice. They respond to questions on Piazza fast, and actually *answers* your questions unlike a certain *cough* other corequisite course. Sure, sometimes edX materials or questions are a bit confusing, but they are quick to patch things up. The professors really care that you succeed in this course. Unlike the other *corequisite course*, which I just find both the…

    Mar 2023 · liked it · 2 found this helpfulOn UW FlowRemove this

  • The first few labs required a decent amount of time to get through, but the last few were not too bad! Nomair was really caring and enthusiastic, he and all the TAs were always willing to help -- IT WAS AN AMAZING TIME!!! Definitely learned a lot of useful tools :D

    Jan 2023 · liked it · 2 found this helpfulOn UW FlowRemove this

  • I either designed or helped design the majority of this course, and I guarantee it's the most fun and easiest CS course that all CS major students take. Hope you like it! <3

    Jul 2022 · liked it · 2 found this helpfulOn UW FlowRemove this

  • SUPER USEFUL. Take it as seriously as if it were a core course and you will learn a lot. The piazza is great, and the profs - especially Nomair - were very helpful. However, be aware that it is a bit more time-consuming than you d want a "lab" to be

    May 2023 · liked it · 1 found this helpfulOn UW FlowRemove this

  • Mango Tango.

    Apr 2023 · liked it · 1 found this helpfulOn UW FlowRemove this

Discussed on r/uwaterloo

135 posts and comments in 88 threads mention CS 136L, September 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

How cooked am I next term 33 points, 27 comments

“https://preview.redd.it/sja2uyioa4ae1.png?width=652&format=png&auto=webp&s=da6f9cb5427cd275561128caa48f6851333be88b I am probably going to regret this. Is this too big of a course load?”

u/Surprised-Egg: “… As far as the other courses go, cs136/cs136l could be really new for you but depending on your programming background/ability you might be able to find it okay. Just start assignments early and get help from office hours and stuff if you're struggling. …”

View on RedditRemove this

Advice on 1B CS course schedule 5 points, 5 comments

“Here's what my 1B schedule looks like right now Hello! 1st year CS here. I passed all of my courses in 1A, but my average wasn't the best (73%) compared to alot of my friends who consistently got …”

u/CSplays: “You're already taking 5 courses, CS136L is only a half-credit lab course. So if you mean drop to 4, I would drop one of the electives and maybe take it over coop (ENGL 109 tends to be offered online a lot, and is easy to stay on top of). …”

u/Ok_Music_9008: “… Yes i just realized some of my friends are only taking 4 (with CS136L) so I realized I shouldn't take more than that. I'll drop ENGL 119 then. I was wondering can I drop from 138 to 128 later in the term if it's too time consuming? …”

View on RedditRemove this

CS 135 to 136 transition 2 points, 3 comments

u/Objective-Quality963: “Did hella shit on CS 135 (fuck Racket), how much harder or easier is CS 135/136L, is it worth considering dropping down to 116 to boost GPA?”

u/my_copingmechanism: “i did very well in cs135 but was crushed by cs136 😭 plus the labs in cs136l take way too long and aren't even counted towards your gpa. if you didn't do well in cs135 i would not recommend taking cs136, definitely drop down to cs116 instead”

View on RedditRemove this

Waterloo courseload 1 point, 8 comments

“Hello everyone I am going into my 1B math term with these courses MATH136 MATH138 CS136 STAT230 ECON101 (Online) Is this too much for me to do in one term, should I consider switching into lower …”

u/mreifslp: “Remember to take CS 136L as well. That being said, this is very standard, it might be a bit harder than 1A due to the extra half course but not by much.”

View on RedditRemove this

CS 1B courses 1 point, 3 comments

u/anonim0791: “How doable (with good grades) would be CS 2B: || || |CS 136L, CS 146, MATH 146, MATH 148, STAT 230, ECON 201?| | |”

u/amongus44: “… stat230 pretty easy Econ201 also I believe is rather easy from what other people have said cs136l is a fake course lol just do the thing every week class is optional it won't be easy that's for sure”

View on RedditRemove this

How to get co-op 3 points, 8 comments

“I'm a first year math student looking for a swe related co-op for fall 2025. I have minimal coding experience( some C and JavaScript), what should I work on to maximize my chances to get co-op. …”

u/Kassaking777: “… I would suggest learning all concepts covered in CS136 (basic programming with C),CS136L (Linux must know stuff), CS246 (OOP with C++) (only first half for 246, don't waste too much time on "design pattern" for now) + some data structures and algorithm (hashmap, dfs+bfs, you may …”

View on RedditRemove this

Spring 2024

CS 136/136L course material 3 points, 1 comment

u/icantstudy1999: “Hi, does anyone that have taken the course have a course outline/practice material for CS 136? I wanna get familiar with the course before taking it next term. Could you also share some info about the structure of the course/amount of workload/course organization? …”

View on RedditRemove this

Check it elsewhere for Fall 2026

Calendar versions

Undergraduate Calendar