Schedule
Slides are posted here before class: click on the topics below. Topics and dates may change as the course progresses.
| Week | Topics | Due | |
|---|---|---|---|
| 1 | May 11 | Intro , Web Apps , Drawing | |
| 2 | May 18 | Input Events, Hit-Testing | A0 |
| 3 | May 25 | Animation, Widgets | |
| 4 | June 1 | Dispatch | |
| 5 | June 8 | Layout, MVC | A1 |
| 6 | June 15 | HTML CSS, Visual Design | |
| 7 | June 22 | Undo, Text | |
| Midterm on Wednesday, June 24, 7 PM | |||
| 8 | June 29 | Direct Manipulation, Declarative | A2 |
| 9 | July 6 | Reactive, Effects | |
| 10 | July 13 | Styling, Asynchronous | |
| 11 | July 20 | Testing, Accessibility | A3 |
| 12 | July 27 | Computer Vision, TBD | |
| 13 | August 3 | TBD, Review | A4 |
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.