Philip Guo (Phil Guo, Philip J. Guo, Philip Jia Guo, pgbovine)

Logistics of Teaching Large Courses: Part 3. designing your course calendar and policies

Before the term starts, you need to set up the syllabus for your course, which contains two main parts: calendar and policies.

Course Calendar

The calendar dictates the scope, pace, and rhythm of your course, so I would set that up first. Everyone's course is different, but we're all constrained by the calendar; nobody can bend time!

Start by marking out the weeks on a draft calendar and noting when holidays occur this term. Even if you're re-teaching the same course again, the calendar will be slightly different this time since holidays fall on different days, you may need to travel on some days, and there might be spontaneous opportunities for cool guest lectures from out-of-town visitors on other days, which all require re-working the calendar every time you teach.

Flow: The main guiding principle in setting up a course calendar is to have a rhythmic flow of content each week going from, say:

  • new assignment is released
  • lectures to introduce the topics relevant to that assignment
  • TA-taught sections or discussions (if applicable) to reinforce the lectures and connect them to the assignment
  • assignment is due
  • repeat!

If you space these events too far apart on the calendar, then your course's pace will feel sluggish; but if you cram them too close together, then it will feel too rushed. If you're afraid you might be trying to cram too much material into your course, you probably are! Like everything else (e.g., writing, video editing), if you cut out 30% of your material, it will probably be more compelling.

Setting Due Dates: Plan for more chaos during the day before each assignment is due. In a large course, some student emergency will inevitably come up before each deadline, last-minute mistakes may be found in your assignment, or the submission website might crash due to heavy traffic. Thus, if you set due dates on Sundays or Mondays, do you really want to be dealing with these logistical issues on your Sundays? I like to set Thursday night deadlines so that nobody needs to scramble over the weekend.

Exams: If you're planning to have exams, space them out on your calendar as you see fit. Then write down exactly which lectures are going to be covered by each exam, so that students can know what they need to study (e.g., “Exam 1: covers lecture materials from Sep 1 to Oct 10”). In each exam's calendar entry, also link to the general exam format on your course policy document (e.g., are they open notes? closed notes? bring your own calculator?). If any student asks you, “what's on the exam?” you should be able to simply point them to the calendar entry.

Holidays: I'd avoid scheduling exams the day right before or after a holiday or other long weekend, since many students may still be traveling around then. If you schedule on those days, you'll get lots of last-minute requests for taking make-up exams, which is a logistical mess. Lecture attendance is also low during those days, so I sometimes use those slots to prototype some optional experimental lectures (such as my HCI/Design Jobs talk), hold informal Q&A sessions, or just cancel class.

Cementing: Once you've set your assignment due dates and exam dates, don't change them later since students may make travel plans or schedule other extracurricular activities around those dates. It's OK to make changes to lecture or assignment contents within reason, but key dates should be cemented before the term starts.

Final note: you might think that moving an assignment due date to later (i.e., giving the entire class an extension) may be generous, but many students will (rightfully!) feel resentful since they worked so hard to meet the original deadline, only to see it moved back last-minute. It just feels unfair.

Course Policies

Think of your course policy document as a binding contract that you make with your students. My colleague Leo Porter says it best: “Have clearly defined policies – apply uniformly” Again, this goes back to fairness.

Your course policies should clearly and unambiguously spell out what's expected from both students and staff. It should be the definitive source of answers for student questions. If your policies are well-designed, then you should be able to answer most questions by directly citing this document and linking to the relevant section. This makes everything as transparent and fair as possible, and also saves you time because you don't need to craft a custom response for each student's question.

Thinking like a lawyer: Is there ambiguous wording in any part of your policy where students can argue for interpretations that you didn't originally intend? Given enough students in a large course, somebody will always be able to find surprising loopholes in your policies, which you should patch up for next time. An ironclad but fair course policy document is impossible to write the first time around, so plan to iterate over many years to continuously improve it. Don't worry if this document seems to be growing longer and longer over time; students will appreciate your attention to detail as long as they perceive it as being fair.

Cementing: Like your course calendar, you shouldn't change policies mid-way through the term since that's unfair to students. If you need to add clarifications, you can create an FAQ (Frequently Asked Questions) section at the end and make updates there. Then the next time you teach, integrate those FAQ entries into a new version of your policy document.

Granting exceptions: Expect the unexpected. With hundreds of students, extenuating circumstances are inevitable, so you need to figure out what your philosophy is for granting exceptions to your written course policies. If you're too rigid, then you may be disadvantaging certain students who truly have well-justified needs; but if you're too loose in granting exceptions, then that may also be unfair to other students (who may not know to assertively ask for exceptions). This balance can be tricky to get right. Again, I try to be guided by maximizing fairness.

One idea here that I like is the concept of slack days or free points: every student gets a few free days to turn in their assignments late, free absences (if attendance counts for grades), dropped grades for lowest-scoring assignments, or other freebies. There's no need to ask for permission or to have a justified reason. This simple mechanism elegantly covers a wide range of student emergencies without requiring you to decide on individual exceptions. Note that if you go down this path, you need to make it extremely clear that these are the only exception-granting mechanisms in your course; otherwise some students will use up all of their slack days and then ask you for additional ones.

One issue with slack days/points is that your staff needs to keep track of when each student has used those throughout the term, which may be hard to scale to hundreds of students. (But if you grant individual exceptions, you still need to keep track of them!)

Next part: Logistics of Teaching Large Courses: Part 4. dealing with start-of-term chaos

(see all parts)

Appendix: Example Course Policy Components

Here are some typical components of a course policy document:

  • Protocol for contacting teaching staff (see below)
    • Include staff office hours here too
  • Exam policy (see below)
  • Teamwork policy, if relevant (see below)
  • Late assignment turn-in policy (see slack days above)
    • For students who add the course later, are they still responsible for turning in earlier assignments? If so, when?
  • Grading policy (see my grading article)
  • Laptop and mobile device use in the classroom
  • Code of Conduct (I've adapted one from the Recurse Center)
  • Academic Honesty (your university should have a standard template for this part)

Example Staff Contact Protocol (from my HCI course)

  • Always check the forum for all class announcements.
  • Don't use email; use the forum to communicate with course staff
  • To chat with the staff in person, catch us after class or during our office hours. Otherwise please use the forum!
  • If you can't get into the forum, let us know in person ASAP.

Example Exam Policy (from my HCI course)

There is no final exam, but there are two midterm exams held in lecture (Exam 1 and Exam 2). The exams are closed-note; you may not use any outside resources.

What will exams cover? Anything covered in lecture, code labs, or the online videos linked from either is fair game for the exams. We often cover theory from lecture (e.g. heuristic evaluation, study design), and coding techniques from lab (e.g. version control, jQuery selectors, t-tests).

Regarding the code labs: you'll have to know how to read code on the exam, but you do not need to write code yourself from scratch. We won't grill you about some tiny nitpicky code construct that appears only on the corner of one slide in tiny font; the coding concepts that you will be tested on will often appear in multiple slides. If you are working your way through the labs (not simply reading what's on the slides), then you should have a good understanding of the required material for exams.

There are no practice exams posted; the slides and videos on the course website should be all that you need to study.

Example Teamwork Policy (from my HCI course)

All work in this course will be done and submitted in teams of 3. It is your responsibility to form teams within your section and by asking on the course forum; the staff will help out, but we will not proactively assign anyone to your team without your authorization. (Exception: If you have only 2 people on your team, then we may assign a third person to add to your team so that it has 3 people.)

Important: if you want to join a team in a different section than your assigned time, then you can try to switch section times with the registrar if there is space. Alternatively, you can find someone in that section who is willing to swap times with you; we will have a forum thread where people post section swapping requests. Please do not go to a section that you're not assigned (or have swapped for), since that risks having section sizes become imbalanced, which is unfair for your TAs.

If you are on the waitlist, then we highly suggest for you to form a team with other waitlist students. Otherwise if you do not get admitted into the course by the Add Deadline, then your original team will be short some members and may have to merge with another team.

(Also, if you are on the waitlist and hope to join the course, then you must still complete all assignments on time as though you were enrolled. We do not grant due date extensions to waitlist students.)

If you cannot find a team by the Add Deadline, then unfortunately you cannot remain in the course.

Once your team of 3 has been formed, you must remain with your team throughout the quarter if you wish to remain in the course. You cannot switch teams mid-way. If students drop and some teams are down to 2 students, the staff may assign a third teammate depending on circumstances.

If your team is down to fewer than 3 members (which does occasionally happen since students drop the course mid-way), then we do not expect your project's web app to be as sophisticated as those from teams of 3, but nonetheless you must still fulfill all of the same rubric items since we are grading everyone based on the same rubric.

No late assignments will be accepted. This is because you will present your work in Friday's section every week, so you need to be prepared to participate. Another reason for our no-late-assignments policy: Any of your team members can make a submission, so in case one or more members are out sick or are overwhelmed at the moment, the remaining members can be there to make up the work for a given week and submit the assignment. We give you enough advanced notice on due dates to plan around when some of you will be busy.

Keep this website up and running by making a small donation.

Created: 2018-12-22
Last modified: 2018-12-22
Related pages tagged as teaching: