General Information

Prerequisites: CS 2110 or equivalent

Credits: 3

People, Places and Times

Weekly Meetings: Tuesday and Thursday 10:10 AM - 11:25 AM, Thurston Hall 203

Instructors: Bernhard Haslhofer [Oct/Nov/Dec] and Theresa Velden [Sep/Nov/Dec]

Office Hours:

location: 301 College Avenue

  • Tuesday, 1:30 - 3:00 PM
  • Thursday, 1:30 - 3:00 PM

Teaching Assistants: Changchen He and Syed Ishtiaque Ahmed

Office Hours:

location: Rhodes Hall 476

  • Wednesday, 4:30 -6:00 PM (He)

location: 301 College Avenue

  • Monday, 3:00 - 4:30 PM (Ahmed)
  • Friday, 11:00 AM - 12:30 PM (Ahmed)

Class Email Communication and Discussion Forum

We will be using Piazza for class discussion. The system is highly catered to getting you help fast and efficiently from classmates, a TA, and ourselves. Rather than emailing questions to the teaching staff, we encourage you to post your questions on Piazza. We will consider active participation in discussions on piazza as positive course attitude.

Find our class page at:

Course Structure


We try to make lectures as interactive as possible. Our goal is to engage students in the lecture process and encourage questions and comments. At times we will spontaneously ask for input, thinking, and opinions from students in lecture. You should come to lecture prepared to think and talk about the materials presented and how they relate to the overall course content and readings, and recognize that your role in lecture is a reflection of your overall scholarly attitude towards the course.

Individual Homeworks

The purpose of the weekly individual homeworks is to gain a deeper understanding of the topics discussed in the lectures and to gain hand-on experience with Web technologies and related tools. Homework assignments will be published each week and must be turned in one week after.

Group Project

A semester-spanning project will provide the opportunity to gain practical experience in the areas covered by this course. Projects will have occasional milestones throughout the semester. Student groups will propose and implement their own projects within pre-defined course guidelines.


The final exam will consist of a presentation of semester projects and submission of final reports.

Grading Policy

Your final grade will be based on homework grades (45%), your project results (45%), and your course attitude (10%).

Grade Disputes

We will post rubrics for all homeworks and project assignments. Note: grading in a course such as this involves objective and subjective measurements. We are quite willing to discuss a grading problem with you face-to-face during office hours (don't send us emails describing a grading issue). Please come equipped with a good argument to justify your disagreement with our grading decision. Grades for specific homework assignments and project milestones can only be disputed within one week of receiving the grade.

Late Policy

Homework assignments and project milestones are due when called for, there are no extensions. If a deadline is a hardship for many people (e.g., it conflicts with major test days in other classes that many people are taking), tell us in advance and try to get us to change it for the entire class. Homeworks can not be made up. The grading scheme will allow you to miss one homework gratis.

Collaboration, academic integrity, cheating

Group assignments are meant to be worked on in groups. They are not meant to be done by one person without review and passed off as the group's work.

Individual assignments are meant to be worked on alone.

In both cases, looking things up and getting ideas from other sources is okay, if you cite your sources. Plagiarism (copying of others' work and attempting to pass it off as your own) is not. If you are not sure, you should be worried -- and you can always ask. Check out for more info, but in this class, it will mostly boil down to not copying from sources verbatim, and pointing to any web resources you reference or access when you write or do your projects.

Cheating is a loss-loss issue. It cheapens the experience for everyone especially yourself, and makes us angry. If it occurs, we will deal with it strictly and accordance with University policies. Check out the University academic integrity web pages for more information. The consequences are a lowered grade, a report to the office of academic integrity, and possibly failure of the course. Don't be That Student. Check out Cornell's code of academic integrity for more info.