10-601A/C Fall 2018 Policies

Course Grading

The grade will be calculated as follows:

Course letter grades will be assigned “on a curve”, jointly for both sections (A and C).

The number of A’s (including A+, A, A-) will be approximately half of the total number of students who took the mid-term exam.  Of the remaining, approximately two thirds will receive a form of B (including B+, B, B-).

Pass/Fail and Audit options

You may take 10601A Pass/Fail if you wish.  Keep in mind that a Pass may or may not satisfy your degree requirements – check with your advisor first.

A formal 'Audit' option is no longer offered.

Informal auditing, namely simply attending class without registration or credit, is welcome.  No pre-approval is required.  However, you may attend the lectures in person only if there are open seats in the auditorium by 9:10am.  Otherwise, you can watch the simulcast, which will also remain available for watching after the lecture.

Assignments: Communication, Deadlines and Lateness

·   Each assignment has a designated TA-in-charge.  Please direct all private communication regarding the assignment to the TA in charge of that assignment, not to the instructor, nor to the other TAs.  General public questions about the assignment can be posted on Piazza.

·   Programming assignments will be handed in via Autolab.

·   All other assignments will be handed in via Canvas.  

·   Extensions: If you have an unavoidable conflict that prevents you from completing an assignment on time (such as travel to a conference or a medical emergency), please send an email to the TA in charge of that assignment, as soon as you become aware of the problem, briefly stating the circumstances and how much more time you need.  The TA-in-charge is authorized to grant an extension as long as you requested it promptly.  Do not send extension requests to the Instructor, nor to the other TAs.

·   Assignments turned in late without prior approval will incur a penalty of 20% per 24-hour (day) period or any part thereof.

 

Other Course Policies (Read this carefully!)

Previously Used Assignments

Some of the homework assignments used in this class may have been used in prior versions of this class, or in classes at other institutions, or elsewhere.  Avoiding the use of heavily tested assignments will detract from the main purpose of these assignments, which is to reinforce the material and stimulate thinking.  Because some of these assignments may have been used before, solutions to them may be, or may have been, available online, or from other people or sources.  It is explicitly forbidden to use any such sources, or to consult people who have solved these problems before.  It is explicitly forbidden to search for these problems or their solutions on the internet.  You must solve the homework assignments completely on your own.  For programming assignments, this means you must write your programs completely by yourself, and not use any code from any source whatsoever.  I will be actively monitoring your compliance, and any violation will be dealt with harshly.  Collaboration with other students who are currently taking the class is allowed, but only under the conditions stated below.

Collaboration Among Students

·       The purpose of student collaboration is to facilitate learning, not to circumvent it. Studying the material in groups is strongly encouraged. It is also allowed to seek help from other students in understanding the material needed to solve a particular homework problem, provided no written notes are shared, or are taken at that time, and provided learning is facilitated, not circumvented. The actual solution must be done by each student alone.  

 

·       The purpose of programming assignments in this course is to make sure you truly understand the relevant techniques.  In my more than 20 years of teaching, I have found no better way to achieve this than by having each student struggle by him/herself to implement these techniques “from scratch”.  For this reason, in the case of programming assignments all code must be written by each student alone.  We will strictly enforce this policy, by carefully inspecting your code using sophisticated detection techniques.  You have been warned!

·  The presence or absence of any form of help or collaboration, whether given or received, must be explicitly stated and disclosed in full by all involved. Specifically, each assignment solution must include answering the following questions:

1.     Did you receive any help whatsoever from anyone in solving this assignment?   Yes / No.

§ If you answered 'yes', give full details:  ____________________________________

§ (e.g. "Jane Doe explained to me what is asked in Question 3.4")

2.  Did you give any help whatsoever to anyone in solving this assignment?           Yes / No.

· If you answered 'yes', give full details: _____________________________________

· (e.g. "I pointed Joe Smith to section 2.3 since he didn't know how to proceed with Question 2")

3.  Did you find or come across code that implements any part of this assignment?  Yes / No.    (See below policy on “found code”)

· If you answered 'yes', give full details: __________________________________________________

· (book & page, URL & location within the page, etc.).

·       If you gave help after turning in your own assignment and/or after answering the questions above, you must update your answers before the assignment’s deadline, if necessary by emailing the TA in charge of the assignment.

Collaboration without full disclosure will be handled severely, in compliance with CMU's Policy on Cheating and Plagiarism.  

Policy Regarding "Found Code":

You are encouraged to read books and other instructional materials, both online and offline, to help you understand the concepts and algorithms taught in class. These materials may contain example code or pseudo code, which may help you better understand an algorithm or an implementation detail. However, when you implement your own solution to an assignment, you must put all materials aside, and write your code completely on your own, starting "from scratch". Specifically, you may not use any code you found or came across. If you find or come across code that implements any part of your assignment, you must disclose this fact in your collaboration statement even if you didn’t use it.

Duty to Protect One’s Work

Students are responsible for pro-actively protecting their work from copying and misuse by other students. If a student's work is copied by another student, the original author is also considered to be at fault and in gross violation of the course policies. It does not matter whether the author allowed the work to be copied or was merely negligent in preventing it from being copied. When overlapping work is submitted by different students, both students will be punished.

To protect future students, do not post your solutions publicly, neither during the course nor afterwards.

Severe Punishment of Violations of Course Policies

All violations (even first one) of course policies will always be reported to the university authorities, will carry severe penalties, usually failure in the course, and can even lead to dismissal from the university.  This is not an idle threat – it is my standard practice.  You have been warned!