Instructor
- Eugene Wu
- ewu@cs.columbia.edu
- OH: Wednesdays 4 - 5PM Schapiro CEPSR 7LW1A (temporary)
TAs
- Abhijit Roy
- Ayush Jain
- Jincheng Li
- Mengqing Wang
- Sania Arif
Office hours
- TA office hours will be in the TA room
- Link to Google Calendar for OH
Textbook
- Database Management Systems 3rd Edition by Ramakrishnan and Gehrke.
Course Resources
Prereqs
- COMS W3134 or W3137 (equivalent courses taken elsewhere are acceptable as well) and
- Fluency in Python or can pick it up during the class
- basic data structures (e.g., linked lists, trees, hashtables)
- big O notation
- HTML/javascript will help
- Will expect students to use tools such as
ssh
to work with machines in the cloud - You need to get permission from the instructor if you do not have these prerequisites. This course is intended for both Computer Science majors as well as non-majors.
Programming Resources
- See our Java to Python Quick Guide
- Additional resources
- Homework assignments must be done alone.
- No collaboration is allowed. Don't do it
- Projects are in teams of 2.
- Both members will recieve the same grade and should collaborate with each other.
- Collaboration outside of the team is not allowed. Don't do it
- See Columbia's description of academic honesty
- Homework is generally due 10AM of the due date, unless indicated otherwise.
- Unless we specify otherwise, students should submit their homework in hard copy rather than electronically. This is a large class and the TAs cannot afford the overhead of printing out electronic homework submissions for grading.
- Auditors: Only students registered for course units may turn in work to be graded.
Grading Policy
- Homework: 15% equally weighted
- Project 1: 15%
- Project 2: 5%
- Midterm: 25% (closed book, 1/2 cheat sheet) 10/28
- Final: 40% (closed book, 1/2 cheat sheet) Last day of class 12/9
Notes on grading (please read):
- The percentages are subject to change as circumstances dictate.
- Active participation in piazza and/or OH can positively affect your final grade.
- Since exams are the main indicators we have of individual grasp of the material, we reserve the right to adjust final letter grades based on exam performance.
- In particular, students who do not achieve a passing average on the exams will not receive a passing grade in the class.
- Work that you submit must be your own (or for two-person projects, the team's). We will run the standard software duplication checkers on submitted assignments.
- Don't cheat. It's not worth it.
Homeworks
- You allowed 3 penalty free late days to use throughout the semester for homework only.
- One late day equals one 24 hour period after the due date of the assignment.
- Even 1 minute late equals the use of a late day.
- Once you have used your late days, there will be a 25% penalty for each day an assignment is late.
- You do not need to explictly declare the use of late days; we will assign them to you in a way that is optimal for your grade when different assignments are worth different numbers of points.
Projects
- Same deal as homeworks
- For projects, you are allowed 3 penalty free late days to be used only for projects.
- One late day equals one 24 hour period after the due date of the assignment.
- Even 1 minute late equals the use of a late day.
- Once you have used your late days, there will be a 25% penalty for each day an assignment is late.
- You do not need to explictly declare the use of late days; we will assign them to you in a way that is optimal for your grade when different assignments are worth different numbers of points.
- TEAMS: both members of the team are deducted late days for each day the assignment is late.
If either member is out of late days, your grade will be deducted as per above.
Additional late day rules
- Late days are nontransferrable between homeworks and projects
- To use a late day for a project, both team partners must have a project grace day available each, and they will both be deducted one project grace day each. If you change team partners and your new partner does not have any project grace days left, then unfortunately you will not be able to use any grace days for the project.
Alternative procedures to submit late homework:
- (Most Preferred) Bring to any office hours.
- Bring to the instructor's office; if office is closed, please write the date and time on the assignment and slip it under the office door.
- Note that the CEPSR building is locked after hours and during the weekend.
- (Least preferred) Contact a TA by email in advance to make arrangements.
When using late days, note that homeworks tend to get harder later in the course.
- (Perferred): Piazza
- (Least Preferred): Email course staff. There are too many people in the course for this to be a primary option!
- Announcements will be on website and via emails using courseworks
- Search google and see if it answers your question. Then tell us:
- What are you trying to do?
- What steps did you think would work and which have you tried?
- How did it fail and why do you think it failed (OK to say I don't know why it failed)?
- What error did it produce?