COMP 20: Web Programming

Tufts University Department of Computer Science, Spring 2017


Teaching Assistants and Office Hours

Class Time and Location



Software Downloads


Class participation encompasses a variety of activities, all with the same purpose. To earn high grades for class participation, you must show that you are actively engaged in managing your own learning, developing new skills, and developing new ways of programming and problem-solving. You can be engaged in a variety of ways:

Nobody has to do all of these things; you can earn top grades for class participation by doing just a few things well. In particular, nobody is required to speak in class, but everybody should be prepared to answer questions if called upon.

Professional interactions with other students and with course staff are the same as those which are expected in any workplace. It is also professional for you to recognize that a member of the course staff may be present but not actually available to talk about COMP 20.


Schedule is subject to change.

Date Agenda Deliverables
Thursday, January 19
Tuesday, January 24th Lab 2 Assigned (labs are due the week after they are assigned): HTTP and Developer Tools
Thursday, January 26th Assignment 1 Assigned, Due Wednesday, February 8th: Your Portfolio
Tuesday, January 31st
Thursday, February 2nd  
Tuesday, February 7th Mobile and Responsive Design
Thursday, February 9th NO CLASS, SNOW DAY
Tuesday, February 14th (Client-Side) JavaScript: Data Structures and Objects Spring 2017 Semester Group Project Announced
Thursday, February 16th Quiz 1
Tuesday, February 21st
Tuesday, February 28th Lab 6 Assigned: Limitations of Client-Side JavaScript
Thursday, March 2nd  
Tuesday, March 7th Lab 7 Assigned: Messages Revisited
Thursday, March 9th  
Tuesday, March 14th NO CLASS, SNOW DAY
Thursday, March 16th Server-Side Development, Web Applications and Frameworks  
Tuesday, March 28th  
Thursday, March 30th Quiz 2
Tuesday, April 4th Loose Ends  
Thursday, April 6th  
Tuesday, April 11th Web Security, Part II Practice Quiz 3
Thursday, April 13th Assignment 4 Assigned, Due Tuesday, April 25th: Security and Privacy Assessment of Client-Side and Server-Side (Assignments 2 and 3)
Tuesday, April 18th
  • Looking Ahead and What's the Point?
Thursday, April 20th Technical Competency Day  
Tuesday, April 25th Looking Ahead and What's the Point? (continued)  
Thursday, April 27th NO CLASS  
Tuesday, May 2nd at 12 PM Semester Group Project Demo Day at 51 Winthrop Street Semester Group Project Performance Review

Course Policies

Student Accessibility Services (SAS)

If you have a disability that requires reasonable accommodations, please contact the Student Accessibility Services office at or 617-627-4539 to make an appointment with an SAS representative to determine appropriate accommodations. Please be aware that accommodations cannot be enacted retroactively, making timeliness a critical aspect for their provision. Please note that accommodation letters will no longer be on Trunk. Rather it is your responsibility to hand deliver them to me. For more details, see

Electronic Devices

Laptops or mobile devices are not allowed to be used in class unless specified. Phones must be silent. You are allowed to politely step outside of the class to take phone calls (e.g., for emergencies, job offers).

Assignment Late Policy

Assignments (labs, homework) are due at 11:59 PM, generally on a Tuesday or Thursday. We will grant an automatic extension of ten minutes at no cost to you.

An assignment is expected to be submitted on time. However, we recognize that the exigencies of college life occasionally interfere with on-time submission. If you have difficulty getting the assignment in on time, you have two options:

  1. For ordinary difficulties, each student is automatically issued three (3) "extension tokens." By expending an extension token, you can get an automatic 24-hour extension on all deadlines associated with a single assignment. To use an extension token, you must e-mail me at Thus must be sent before the assignment is due. At most two extension tokens may be expended on any single assignment. When you are out of tokens, late assignments will no longer be accepted: it will be returned ungraded, and you will receive no credit for the work.
  2. If a serious illness affects your ability to complete the assignment on time, your first step is to report the illness using the "Illness Notification Form" that is available in WebCenter for Students. We will make suitable arrangements. For extraordinary difficulties, such as bereavement, family emergencies, or other extraordinary unpleasant events, your first step should be to make contact with your associate dean for undergraduate education. You must take this step before the assignment is due. Ask your dean to drop me an email or give me a call, and we will make special arrangements that are suited to your circumstances.

Please understand that extension tokens are meant to be used. That is, you will not receive any special bonus at the end of the course if you do not use any of your extension tokens.


A lab is due one week from the day it is assigned.

Solutions to Assignments and Examinations

Solutions to assignments and examinations will not be posted for this course.