Course Structure

CS 5010 uses a flipped-classroom model. Each week, students study online materials before coming to class. These online materials take the place of traditional lectures. The class meetings are devoted to discussions of the material, exercises, quizzes, and other activities designed to reinforce or supplement the online materials.

The semester is divided into week-long modules. Each module contains online materials to be studied before class, in-class activities, and a problem set to be done outside of class.

Before Class

Before coming to class, students are expected to have:

As you do those things, you will probably have questions. Please ask those questions on the course's Piazza discussion board, or ask them in class.

In Class

Weekly class meetings will be devoted to:

You can ask questions of the instructor, but the instructor can also ask questions of you. Be prepared to answer questions when called upon by the instructor.

Problem Sets

Problem sets are assigned weekly. They are usually assigned on Monday and are due at 6pm the following Monday. If you have questions about a problem set, be sure to ask those questions early, in class or on Piazza, so your progress will not be delayed by waiting for answers.

Later in the week, you will give an oral presentation describing your solution to the problem and answering questions about your solution. We refer to these presentations as codewalks. Codewalks are a key element of the course, and are critical for both your own learning process and for our evaluation of your progress.

You will fill out a form each week to let us know the times at which you are available for codewalk, and which of those times you would prefer. Please be as flexible as possible, to improve your chances of being assigned a slot with which you can be happy.

We will collect your codewalk preferences weekly, late on Saturday night. You will be sent electronic mail informing you of the time and place for your assigned codewalk.

Your problem sets will be judged on:

For debugging: Click here to validate.