Computer Science 340
The lectures are going to take place online this semester. You are strongly encouraged to attend the lectures online. Your lecture attendance and participation are important to your success in the course.
Some of the material covered in lectures may not be covered in the textbooks or precepts. Some exam questions may reward your lecture attendance.
The precepts are going to take place online this semester. We encourage you to attend the online precepts. We also encourage you to participate actively in the precepts by listening attentively, asking helpful questions occasionally, answering questions occasionally, and so forth. Your precept attendance and participation are important to your success in the course. They also are important to the success of the course as a whole.
Some of the material covered in precepts may not be covered in the textbooks or lectures.
You should attend online your precept, that is, the precept for which you are registered in Princeton's TigerHub system.
Generally it is not acceptable to attend another precept instead of your precept. However, it is acceptable to attend another precept instead of your precept occasionally if a conflict with your precept arises (indeed you should do so). In that case, as soon as you become aware of the conflict, send e-mail to your Preceptor and the other Preceptor. Note that this mechanism is intended to address occasional conflicts; it does not provide license to attend precepts other than your precept on a regular basis.
Generally it is not acceptable to attend another precept in addition to your precept. After all, if even a small fraction of the course's students did that routinely, then some precepts would be very large (or even overflow) routinely. Precepts containing a large number of students are less effective than those containing a small number. However, it could be acceptable to attend another precept in addition to your own occasionally. In that case, send e-mail to your Preceptor and the other Preceptor the day before the precept, asking permission to attend. The Preceptors then will make the decision and let you know.
Course announcements are distributed through the course's Piazza account.
Instructions on how to subscribe to Piazza are given in the start of the course.
These are the course's policies concerning electronic communication:
If you have a question about course policies, don't post it on Piazza. Instead email (or visit the office hours of) your Preceptor or the Instructor of Record of the course.
If you have a question (not related to course policies) that you can express without revealing any parts of your assignment (also known as problem set) solution, then you may post it to the course's Piazza account. One of the course's instructors will respond as soon as possible. Other students also are welcome to respond if and only if they can do so without revealing any of their assignment solutions.
If you have a question that you cannot express without revealing any part of your assignment solution, then you may not post it to Piazza. Instead you may e-mail it to your Preceptor. See the course's General Information web page for the e-mail address of your Preceptor. You may not e-mail questions directly to a Preceptor other than your own.
In the context of electronic communication, the phrase "any part of your assignment solution" includes:
The products that you create for the assignment, that is, your .tex code files (including parts of it), pdf files containing parts or the whole solution of a problem included in an assignment, your notes taken for the purpose of completing the assignment, etc. You may not show any of the products that you create for the assignment, modified versions of them, or any parts of them, openly (for instance on a post where other students have access to) on Piazza.
Descriptions of those products in the form of natural language prose, etc. You may not describe the solutions that you write for the assignment, or any parts of them, openly (for instance on a post where other students have access to) on Piazza.
Decisions that you make in the process of creating the solutions to assignments, that is, your decisions about how to express your the logic of your solution or a part of it. You may not describe such decisions or suggest this kind of decisions openly (for instance on a post where other students have access to) on Piazza.
Unless a problem is marked as a no-collaboration part of an assignment in which case you may only discuss the problem with course staff, you may collaborate in groups of at most three students of the course to solve assignment problems. After discussing with your collaborators, you must type your own solutions. You must write all the names of your collaborators on your solutions. If you did not collaborate with anyone, you must clearly state it on your solutions, writing for example ''Collaborators: None'' on your solutions. You are not allowed to discuss your solutions outside of your group. However, you may discuss your solutions with the Professor of the course, any of the Preceptors of the course and the Lab TAs; see the course's General Information web page for information on the teaching staff of the course. Any notes taken during your discussions should be discarded after the discussions are over and before you write your solution. After you finished your discussions, you should write your own solutions in isolation. Being together (even in an online setting and with your group members or other students of the course) and writing/typing solutions is strictly prohibited.
You may consult the course reading material (distributed only in this semester's course Piazza account) to solve assignment problems. Furthermore you can consult external sources to learn the course material and to solve assignments, with the understanding that:
If you used any external sources to solve assignment problems (e.g. other textbooks, wikipedia, material from other courses) you must clearly mention them at the beginning of your solution.
Some assignments restrict available sources; you may use only the sources listed in those assignments.
In all cases, you may not consult material posted in previous semesters' course Piazza accounts.
Furthermore, you may not consult material that reveal parts of the assignment solutions beyond the ones the course's teaching staff may post on Piazza.
Sharing your assignment solutions with another student is an especially egregious violation of course policies. Do not give hard copy of your work to anyone. Do not e-mail your work to anyone. Do not make your work available to anyone via the web.
There will be several problems in each assignment. You must type the solution to each problem on a separate PDF file. You may use the provided LaTeX templates to type in your solutions. Write your name, assignment number, and names of your collaborators on each solution.
If you took COS 340 (or part of it) during a previous semester, then you may use your work on assignments from that previous semester. However:
You may not look at the feedback on your old graded reports.
You may not look at any course material (solutions to assignments, precept material, etc) you may have had access to while enrolled in a previous semester.
You may not use your work on an assignment from a previous semester if you violated course policies or University policies on that assignment, as determined by the course's instructors or the Committee on Discipline.
Conduct during in-class exams is covered by the University Honor Code. If we suspect a student of inappropriate conduct during an in-class exam, we will refer the case to the Honor Committee. If the Honor Committee finds the student guilty of inappropriate conduct, the standard penalty is automatic failure of the COS 340 course. The Honor Committee may impose additional penalties.
You must submit all your solutions to an assignment electronically as PDF files using the link to the TigerFile service posted in the relevant Piazza thread.
You may use up to 4 late days throughout the semester, but not more than 2 days on a given assignment. Using one late day on an assignment extends the due date/time of that assignment by 24 hours. Using two late days on an assignment extends the due date/time of that assignment by 48 hours. On each instance, you may only use an integer number of late days. Your late days' usage up to and including the current assignment is posted on Blackboard after you submit your solutions to the problems of that assignment.
Outside of this policy, no late submissions will be accepted unless there are extraordinary circumstances involved. We will grant extensions only in the case of illness (with a doctor's note) or other extraordinary circumstances. If illness or other extraordinary circumstances will cause you to submit an assignment late, then you should discuss the matter with your preceptor as soon as possible. Please plan your work on the assignments so that travel, religious holidays, etc. do not cause you to submit it late. Heavy workload is not an extraordinary circumstance.
If you wish to remove an assignment file you submitted, you can only do so before 48 hours have passed after this assignment's deadline. This time period you have to remove an assignment file you submitted is not affected by any late days you may have used on this assignment.
Your final grade will be weighted as follows:
Component Weight Assignments 50% Exams (Midterm and Final, see below for calculation) 50%
The Exams Grade will be calculated as follows. It will be the maximum of: (60% final exam + 40% midterm exam) and (80% final exam + 20% midterm exam).
There will be 5 Assignments (Problem Sets). Each Assignment will consist of multiple problems. The total number of problems across all assignments will be approximately 30. One Assignment will be comprised of no collaboration problems. Among all Assignment problems, 4 problems (the ones with the lowest scores) will not be included in your final grade calculation.