How the Class Works (Course Rhythm)
This page explains how the class will work. As an online class with some experimental mechanics, this might take some explanation. However, the class has a basic pattern - a 2-week rhythm—that we will repeat over and over…
If you’re curious why the class is the way it is, see the FAQ - The Whys?, start with FAQ - The Whys? (Why is this class online?) and FAQ - The Whys? (Why get rid of lectures?) (and keep going from there). Understanding the rationale (why) may help everything else make sense.
Overview
This semester, CS559 will be taught in an online, mostly-asynchronous manner.
The class is divided into 2-week modules. We will have 7 (there are 14 weeks in the semester). The pattern for the class is based around these 2-week modules.
The core of the class will be a set of Workbooks - collections of web pages that serve as reading material, demonstrations, and assignments. There is one workbook per module.
There will be videos, but these will be connected to the workbooks. The required ones will be presented in Canvas surveys that the workbooks will link to. More about this at Types of Videos below.
We will have online “lecture” sessions - but these will be to support your work on the workbooks.
The Workbooks
At the beginning of a module (on Wednesday morning) we will announce an “Introduction Video Survey” - a Canvas survey with an attached video that will introduce the module. The survey will have a GitHub classroom link that will create your workbook repository for you.
The GitHub Classroom link is a magic link that when you follow it, it will create your own personal repository on GitHub with the workbook in it. Warning: you need to “accept” the invitation to join the repository (link sent via email, or look for pending invitations on the GitHub webpage).
You will then clone this workbook to your own computer, and start working on it. The workbook is a set of web pages, so you work on it by starting a local web server in the root directory of the workbook.
If you’re using the recommended tools (Visual Studio Code with Live Server), you open the workbook folder, press the live server button, and it will start a web server and point your browser at it.
The “work” of the workbooks includes reading the text (it is the primary text for the class), filling in form elements (type-ins), experimenting with demos, and editing/writing the programs. The programs you write are on small web pages embedded into “boxes” on the workbook pages. This will all be explained in the first workbook.
The idea of the workbooks is that they explicitly bring together the tutorial aspects of class (reading and demos) with the programming aspects (things you write). The reading assignments will be given in the workbooks. This means the text of the workbook web pages, but also the source code of the workbooks, and other documents that the workbooks point you to. Reading the code in the workbooks and experimenting with demos will often be an explicit part of the assignments.
Almost all of the programming you do in class will be in the workbooks. You will fill in parts of the workbook with code as directed. Workbooks will give you framework code for bigger assignments, and help with the mechanics since we’ll make sure the files are in the right place, and since it will all be tracked with GIT, this makes it easy to turn it in (in theory), and protects you against messing things up (providing you use GIT correctly).
Part of the idea of the workbook is that reading the code for examples should be an active part of class. For many things we really want you to look at how we do things.
As you work on the workbook, you should make checkpoints. These let us know that you are making progress, but it also helps protect you if something goes wrong. For the web forms (type-ins), we have a button that writes the contents to a server. For the programs (the boxes), you use Git to commit your work (important if something goes wrong) and push it to GitHub (which serves as a backup, and a hand-in mechanism).
When you are done with the workbook, you should commit and push your work, and press the submit button which makes a special checkpoint that signals us that your assignment is ready to grade. If you don’t submit correctly, we cannot grade your workbook.
The Course Rhythm
The class has a weekly pattern, but the real rhythm is a 2-week pattern repeated for each module. (see FAQ - The Whys? (Why the 2 week cadence (modules), rather than weekly?))
The rhythm starts on Wednesday (the first day of each module)
- Wednesday (module week 1) - The Workbook is announced with a Canvas Video Survey with an Introductory Video. This survey has the GitHub Classroom link. (Note: the class on Wednesday will be the quiz for the prior module)
- Friday (module week 1) - There will be an optional (online) class meeting (information provided via Canvas). There will be an end-of-week survey (on Canvas). In week 1, this survey is an anonymous class survey.
- Monday (module week 1) - There will be an optional (online) class meeting (information provided via Canvas).
- Tuesday (module week 1) - There will be a workbook checkin point. You should make a checkpoint of your progress.
- Wednesday (module week 2) - There will be an “in-class” activity (online). We will announce it via Canvas. It will either be a survey or a GitHub Classroom link with a small programming assignment.
- Friday (module week 2) - There will be an optional (online) class meeting (information provided via Canvas). There will be an end-of-week survey (on Canvas). In week 2, this survey is a content survey.
- Monday (module week 2) - There will be an optional (online) class meeting (information provided via Canvas). We will also release partial solutions to the workbook (to help students who are stuck).
- Tuesday (module week 2) - The workbook is due.
- Wednesday (after the module) - There is a quiz during class time. This is also the first day of the next module
- Monday (after the module) - This is the cutoff for late assignments.
If you notice…
- Every Monday there is an (optional, online) class session.
- Every Tuesday there is a due date for the Workbook (either a checkpoint, or the final hand-in).
- Every Wednesday there is a class activity or quiz during class time. Some Wednesdays introduce new modules.
- Every Friday has an end-of-week survey. It also has an (optional, online) class session.
Types of Videos
As this is an online class, videos are quite important. We’ll have several kinds of videos.
The goal for this class was to have a set of short videos that complement the workbooks. (see FAQ - The Whys? (Why are videos made into small chunks and placed inside the workbooks?)). Unfortunately, we may not have the time to produce a complete set of new videos, so we will need to repurpose some videos from older classes.
I will recommend videos from other classes or internet resources. These are generally really high-quality presentations of the material. They present things in a different way than I like to present it - but they should complement class material well.
Some videos will be presented in surveys on Canvas (we call these video surveys). A video survey will have the video embedded either on the instruction page, or the question page. You should view the video by taking the survey. The survey will ask you a few questions to help you reflect on the video, for example to check that you understand the key points. If you want to watch these videos again, you don’t need to take the survey again (you’ll be able to find the video in the Kaltura Gallery). But make sure that the first time you watch a required video that you do it through the survey so we know that you’ve seen it.
You can reach the Video Surveys through Canvas (they will be listed as surveys, and as part of the modules). But (other than the introduction ones) you should prefer to access them through the links in the workbook: it will give you the context of why you want to watch the video, and provide it to you “just in time” when you need it. Videos on the surveys will also be available in the Kaltura Gallery on Canvas.
So what/where are the videos?
- Module Introduction Videos: these will be Canvas Video Surveys announced on Wednesdays when the module begins. The survey will also have the GitHub classroom link for the workbook.
- Workbook Complement Videos: these are short videos designed to help within the workbooks, usually to show things that are difficult to describe. They are presented as Canvas Surveys. There will be links to the surveys at appropriate points in the workbooks. You can also find them on Canvas directly (not recommended).
- 2023 Lecture Video Clips: In 2023, I made video lectures for this class. These were lecture videos (75-minute chunks), not “complement” videos. (see FAQ - The Whys? (Why get rid of lectures?) and FAQ - The Whys? (Why are videos made into small chunks and placed inside the workbooks?)). However, the lectures are pretty good—especially if you just watch the piece of them related to the part of the workbook you are working on. I will provide links scattered throughout the workbooks. If you want to watch entire lectures (or even binge-watch an entire semester of lectures), you can see the outline at CS559 Spring 2023 Videos.
- Graphics in 5 Minutes Videos: Prof. Steve Seitz at the University of Washington produced a sequence of 5-minute “cartoons” that explain graphics concepts. The idea is similar to our class: replace lectures with short, high-quality videos. You can read about the project Graphics in 5 Minutes. The videos are really good, but they don’t always align with our class. I’ll put links to specific ones into workbooks where they are appropriate.
Types of Surveys and Quizzes
We will use Canvas Surveys and Quizzes in this class.
A Survey in Canvas terms is a quiz where Canvas gives you a grade for completing it (as opposed to a Quiz where it wants to check individual items).
We will use Quizzes for the end-of module quizzes and the final exam. Canvas will try to assess how many questions are correct. The percentage of correct answers in Canvas may not directly map to a grade.
We will use Surveys for everything else. Canvas will give you “points” for completing the survey. A human might adjust the score later.
We will have many surveys (see FAQ - The Whys? (Why do we have all of these surveys, checkpoints, and quizzes?)), of different kinds.
- Class Introduction (Video) Survey - This is a special case. This survey has the class introduction video, and some other information to help you get started in class. We won’t ask many questions.
- Module Introduction (Video) Surveys - These surveys will have an introduction video and additional information to introduce a module. This is where you will find the GitHub classroom link. We may also provide some other hints for doing the module. The questions are to get you thinking about the module topics, and to check that you’ve visited the page to get started.
- End-of-Week Content Surveys - These surveys are meant to help you think about the module content and check your understanding. We may check use them to check your understanding (see Parts of Class and Grading (Even weeks: Content Surveys)). We will give you answers (and allow you to adjust your answers after you’ve seen our answers).
- End-of-Week Class Surveys - These surveys are anonymous (we will know which students complete them, but cannot connect answers to students). They are a way for us to check that class is working OK.
- Video Surveys - We will put required videos on survey forms. This gives us indication that you’ve at least gone to a web page with the video on it. We will ask questions to help you check that you have gotten information from the video. We’ll give you the answers - the main point is for you to check your understanding.
Surveys are part of the learning experience. We will deliver content using them. The questions are meant to help you think about the topics. Even if you just copy the “right” answers we give you, you are hopefully at least seeing the right answers. But, if you really want to learn the material, we recommend taking the surveys seriously.