CS349 Spring 2026

Schedule

Slides are posted here before class: click on the topics below. Topics and dates may change as the course progresses.

WeekTopicsDue
1May 11Intro , Web Apps , Drawing
2May 18Input EventsA0
3May 25Hit-Testing , Animation
4June 1Widgets , DispatchA1
5June 8MVC , Layout
6June 15HTML CSSA2
7June 22Visual Design , Undo
Midterm on Wednesday, June 24, 7 PM
8June 29Text
9July 6Direct Manipulation , Declarative
10July 13Reactive, Effects, StylingA3
11July 20Asynchronous, Testing
12July 27Accessibility, Computer VisionA4
13August 3TBD, Review

Lecture Demo Code Repo

https://git.uwaterloo.ca/cs349/public/1265
You should clone and frequently pull from the UWaterloo GitLab repo. It has code relating to lectures and a git submodule with the SimpleKit UI toolkit. See the README for details for cloning and keeping everything up to date.

In-class Coding

You're encouraged to bring a laptop to class so you can follow along with coding demos in lecture. In addition, some lectures include short in-class coding exercises, typically about 10 - 15 minutes. In either case, you'll need a laptop that's charged and ready to go with all the course software installed. If you don't have a laptop, contact the instructor at the start of the term to explore options.

Last modified

© Daniel Vogel

Cheriton School of Computer Science, University of Waterloo

Made with ❤ using Eleventy, Tailwind, and Alpine.js