(This page is in flux)


Topics will likely include:

Course Expectations

What I expect from You


Participation is mandatory.
Since the course is small, it is expected that students will help contribute to the in person and online discussions. This includes:

Students that do not actively participate will receive a 0 in the course.

Paper Reviews (every class)

See ./reviews for a description and expectations for paper reviews.


For Homeworks, you allowed 5 penalty free late days to use throughout the semester. One late day equals one 24 hour period after the due date of the assignment. Once you have used your late days, the assignment will be 0. There is no need to tell the staff that you are using the late day.

Project (semester long)

You will pursue a semester long research project related to this course. The project is a significant part of the course grade.

Extra Credit

The purpose of extra credit is to reward learning and doing cool stuff. Propose activities that the course doesn’t cover nor force you to do, and convince me how much extra credit (up to 10%) you should receive. Some possible directions:

Collaboration/Copying Policy

Refer to Columbia’s academic honesty policy if you are at all unsure.

You must write all the code you hand in for the programming assignments, except for code that we give you as part of the assignment. You are not allowed to look at anyone else’s solution, you are not allowed to look at solutions from previous years, and you are not allowed to look at solutions from other universities. You may discuss the assignments with other students, but you may not look at or use each other’s code. The same rule holds for the question assignments: you must write all answers yourself, not look at others’ answers, but you can discuss the questions with others at a high level. You are also not allowed to look for or at solutions to the homeworks on the Internet. You can search for small pieces of code that solve small parts of your homeworks, and you may use tutorials to learn, however if you copy any code from anywhere, we request that you identify the origin in a comment in the code.

Be advised that we will be running all assignments through the MOSS code similarity tool, which is very accurate even after significant amount of obfuscation, so we will identify and report anyone who attempts to breach this rule. We will include in our tests solutions from previous years both from Columbia and elsewhere. Both copy-ers and copy-ees will be punished. You are responsible for protecting your code and homeworks from others and not leaving them lying around in publicly open directories.

Finally, you may discuss the questions for each question assignment with other students, but you may not look at other students’ answers. You must write your answers yourself.