Icon COS 333
Course Info Lectures Assignments Project Schedule Policies
Course Info Lectures Assignments Project Schedule Policies

COS 333: Schedule


The schedule may change throughout the course. Please check it frequently.


Week 1: 9/2 - 9/6

Lecture 1: Course Overview; The Python Language

Use Survey app to express your expertise and interests in course topics (due on Friday 9/4 at 5:00PM)

Project: Learn requirements

Project: Discuss ideas with course instructors and other students

Project: Use ProjectFinder app to find project teammates and to tell others about your project (initial entry due on Sunday 9/6 at 5:00PM)


Week 2: 9/7 - 9/13

Lecture 2: The Python Language

Lecture 3: The Python Language

Project: Learn requirements

Project: Discuss ideas with course instructors and other students

Project: Use ProjectFinder app to find project teammates and to tell others about your project


Week 3: 9/14 - 9/20

Lecture 4: Database Programming

Lecture 5: Database Programming; The Project

Assignments: Assignment 1 (due on Sunday 9/20 at 9:00 PM)

Project: Discuss ideas with course instructors and other students

Project: Use ProjectFinder app to find project teammates and to tell others about your project

Project: Sign up for a project approval meeting (due on Friday 9/20 at 5:00PM).


Week 4: 9/21 - 9/27

Lecture 6: Network Programming

Lecture 7: Concurrent Programming

Project: Approval meeting with course instructors

Project: Choose a TA adviser and weekly status meeting time


Week 5: 9/28 - 10/4

Lecture 8: Concurrent Programming

Lecture 9: Web Programming; Server-Side Web Programming: Python

Assignments: Assignment 2 (due on Sunday 10/4 at 9:00 PM)

Project: Weekly status meeting with your TA adviser

Project: Initial team directory (due at the time of the weekly status meeting)

Project: Timeline document (due at the time of the weekly status meeting)

Project: Project Overview document (due on Sunday 10/4 at 11:59PM, but ideally at the time of the weekly status meeting)


Week 6: 10/5 - 10/11

Lecture 10: Server-Side Web Programming: Python

Lecture 11: AI Programming

Project: Weekly status meeting

Project: Updated Timeline document (due at the time of the weekly status meeting)

Project: Wireframes (due at the time of the weekly status meeting)

Project: (optional) Meeting with Princeton user interface expert


Week 7: 10/12 - 10/18

Lecture 12: Web Application Deployment

Lecture 13: The JavaScript Language

Project: Weekly status meeting;

Project: Updated Timeline document (due at the time of the weekly status meeting)


Week 8: 10/19 - 10/25

Fall recess


Week 9: 10/26 - 11/1

Lecture 14: The JavaScript Language

Lecture 15: Client-Side Web Programming: JavaScript

Assignments: Assignment 3 due (on Sunday 11/1 at 9:00 PM)

Project: Weekly status meeting

Project: Updated Timeline document (due at the time of the weekly status meeting)

Project: Demonstration of prototype (during the weekly status meeting)


Week 10: 11/2 - 11/8

Lecture 16: Client-Side Web Programming: JavaScript

Lecture 17: Client-Side Web Programming: JavaScript; Client-Side Web Programming: CSS

Project: Weekly status meeting

Project: Updated Timeline document (due at the time of the weekly status meeting)


Week 11: 11/9 - 11/15

Lecture 18: Security Issues in Web Programming

Lecture 19: Security Issues in Web Programming

Assignments: Assignment 4 (due on Sunday 11/15 at 9:00 PM)

Project: Weekly status meeting

Project: Updated Timeline document (due at the time of the weekly status meeting)

Project: Demonstration of alpha version (during the weekly status meeting)


Week 12: 11/16 - 11/22

Lecture 20: Server-Side Options

Lecture 21: Client-Side Options

Project: Weekly status meeting

Project: Updated Timeline document (due at the time of the weekly status meeting)

Project: (optional) Meeting with Princeton user interface expert


Week 13: 11/23 - 11/29

Lecture 22: Software Engineering

Thanksgiving Holiday


Week 14: 11/30 - 12/6

Lecture 23: Software Engineering

Lecture 24: Software Engineering; Course Conclusion

Project: Demonstration of beta version (during the weekly status meeting)

Project: Updated Timeline document (due at the time of the weekly status meeting)


Week 15: 12/7 - 12/13

Reading Period

Project: Presentation

Project: Presentation slides

Project: Updated Timeline document


Week 16: 12/14 - 12/20

Reading Period and Aftermath

Project: Updated Timeline document (due on Thursday 12/17 at 11:30AM, as specified by the Registrar)

Project: Grader's Guide document (due on Thursday 12/17 at 11:30AM, as specified by the Registrar)

Project: Product Evaluation document (due on Thursday 12/17 at 11:30AM, as specified by the Registrar)

Project: Project Evaluation document (due on Thursday 12/17 at 11:30AM, as specified by the Registrar)

Project: Source code (due on Thursday 12/17 at 11:30AM, as specified by the Registrar)

Project: Application (due on Thursday 12/17 at 11:30AM, as specified by the Registrar)


This page was written by Robert M. Dondero, Jr.