15-112 Syllabus |
Office Hours: |
Instructor Office Hours (koz): Tue/Thu, noon to 2pm, GHC 5001 |
||||||||||||||||||||||||||||||||||||||||||||||||||
Schedule of Classes: |
|
||||||||||||||||||||||||||||||||||||||||||||||||||
Required Textbooks: |
None. | ||||||||||||||||||||||||||||||||||||||||||||||||||
Optional Textbooks and Online Resources: |
|
||||||||||||||||||||||||||||||||||||||||||||||||||
Required Software: |
We will use Python version 2.x, which can be freely downloaded from python.org. We will provide download instructions in class. We will also use one or more free IDE's (code editors) and other free software packages. We will not use any commercial software packages in this course. | ||||||||||||||||||||||||||||||||||||||||||||||||||
Course Requirements: |
Participation
in this course is required and consists of the following activities:
Attendance is required (if not always strictly recorded). Repeated failure to attend lectures or recitations may result in a lowered semester grade regardless of your numeric average. You will be responsible for all materials presented in lectures and recitations. You should not expect that all lecture or recitation materials will be given to you in written form (including the online class notes we provide). Note that missed quizzes and tests may not be made up in general (though certain exceptions are permitted -- see the relevant sections below). Assessment: Any material covered in lecture, in recitation, in assigned readings, or in homework assignments may be included in any future homework assignment, quiz, or test. |
||||||||||||||||||||||||||||||||||||||||||||||||||
Grading: |
Each lab, homework, term project, quiz, midterm, and final will be graded
on a standard scale: |
||||||||||||||||||||||||||||||||||||||||||||||||||
Exams and Quizzes: |
Final Exam: There will be a standard 3-hour final exam during the final exam period at the end of the semester. The final exam is worth 20% of the semester grade. Midterm Tests: |
||||||||||||||||||||||||||||||||||||||||||||||||||
Homework Deductions: |
Late Homework: Homework is due at a specified date and time. If you miss the deadline (by even one minute, according to Autolab's clock), homework may be submitted up to 24 hours late with a 25% penalty. No homework submissions will be accepted after the 24-hour late period, except in the case of medical or family emergencies or other pre-arranged university-approved absences. Homework Formatting Errors: Misformatted homework in general cannot be graded by our autograder, and as such may receive 0 points. Thus, be sure to submit your homework early -- you can submit repeatedly, we only grade the last submission -- to be sure you do not have obvious formatting errors. Show Your Work: Some homework assignments, and most quizzes and tests, will include some written work (meaning: work that is not performed with access to Python or an IDE or a calculator (unless otherwise noted), whether or not it involves programming). In order to receive credit for these problems, you must show your work. Correct answers without supporting documentation will not be given full credit. Some questions may not require work to be shown (e.g.: "Name three software companies in Silicon Valley"), but most questions assuredly do. When in doubt, show your work. |
||||||||||||||||||||||||||||||||||||||||||||||||||
Programming Assignments: |
The programming assignments are a critical part of the course. Experience has shown that the concepts covered in this course are best learned by direct engagement -- in our case by applying them to example problems or by implementing them in computer programs. Programming assignments will be graded based on style (modularity, effective use of data abstraction, readability, commenting, etc.) and functionality (correctness and efficiency of the program on the test inputs). A working program is not sufficient for full credit. Make sure you do a thorough data validation. Your code should be properly annotated with comments that are well-placed, concise, and informative. Your assignments will be graded by your CA, and by automated graders, and at times by your instructor. |
||||||||||||||||||||||||||||||||||||||||||||||||||
Cheating and Collaboration: |
Unless otherwise noted, for homework assignments, students are encouraged to talk to each other, to the course staff, or to anyone else about the assignments. This assistance, though, is limited to the discussion of the problems in general. Each student must develop his or her own solutions to the homework. Consulting another student's solution is prohibited, and submitted solutions may not be copied in whole or in part from any source. Specifically: do not look at other
students' code or written answers, and do not show them your code or
written answers, until after the assignment deadline has passed and the
assignment has been submitted and graded. In particular, this precludes students helping each other debug their code (since you may not even look at their code). Of course, students may (and should!) seek debugging assistance (and any other help) from the course staff, who provide extensive support to all students via email, office hours, review sessions, and 1-on-1 tutoring by appointment. Also, if you find a reference (say, in an optional textbook or some online source) that contains code or a written solution that is identical or overtly similar to an assigned problem, then you are required to not look at that code or written solution! You may still refer to supporting figures and explanatory text, but you may not look at or copy the code. And: any attempt to
decompile solutions, or object code that may help produce solutions,
or in any way to extract solutions from the autograder, or to "hack" the
autograder in any way, will result in your failing the course. The following addendum is effective from 7-Nov-2011: |
||||||||||||||||||||||||||||||||||||||||||||||||||
Classroom: |
Recording (audio or video): Students may not record lectures or recitations
without explicit permission in writing from the instructor. Violations will
result in your failing the course. Exceptions will be granted in accordance with
university guidelines for accessibility concerns, but even then such recordings
may not be shared publicly or privately and must be deleted at the end of the
semester. Electronics: Students may not use any electronic devices in lecture (no cell phones, laptops, iPads, iPods, iWhatevers, etc) without explicit permission in writing from the instructor. Students are expected to take notes, but to do so manually (pen and paper). |