CPSC 124: Introduction to Programming (Spring 2007)Lecture 11:15 - 12:10 (period 4) Mon/Wed/Fri, Stern 103 (Class Schedule)Lab 1:30 - 2:55 Thu, Gulick Hall 208 (Lab Schedule) Web: http://math.hws.edu/mcorliss/teaching/spring07/cs124/index.html |
|
Announcements
StaffInstructor: Marc Corliss (corliss at hws dot edu)Office hours: Mon/Wed 12:15-1:15, Thu 10-12, Fri 1:30-2:30. Teaching Assistants: Rick Beyer (frederick dot beyer at hws dot edu) Office hours: Wed 7-9 and Thu 7-9 in Lansing Lab (310). Lori Pietraszek (Lori dot Pietraszek at hws dot edu) Office hours: Thu 1:30-2:55 in Gulick 208 (during lab), Mon 7-9pm in Lansing lab (310). Keenan Simons (thaddeus dot simons at hws dot edu) Office hours: Sun 7-9pm in Lansing lab (310). Course SummaryThis course is an introduction to computer programming. Computer programming is the craft of instructing a computer to perform some task. It requires breaking the task up into a sequence of clear and unambiguous steps, and constructing these steps in a language the machine can understand. Good programmers must be able to think logically and be good problem solvers. Although computer science consists of much more than computer programming, programming is a fundamental part of computer science.This course emphasizes the general principles and techniques of computer programming, which can be applied to almost any programming language. Although the emphasis is on programming in any language, this course focuses on one language, in particular, called Java. The Java programming language has become ubiquitous in computing systems due to its portability and advanced features. This course will explore those features that have made Java so popular in recent years, while comparing and contrasting Java with other programming languages. Topics covered include control constructs, subroutines, the object-oriented paradigm, graphical user interfaces (GUIs), and arrays. TextbookThis course will use the textbook, "Introduction to Programming Using Java", an online textbook written by Professor Eck. Printed copies will be handed out early in the semester (this is what the $25 course fee covers).ScheduleThe tentative class schedule and lab schedule are posted online. The schedule is split into several topics that usually make up one chapter of the textbook. If a programming assignment or lab is due on some class day then the it is due at the start of class. Exams (both the review and the actual test) and vacation days are indicated on both schedules. Labs will be posted to the lab schedule on the day they are assigned. Programming assignments will be posted to the class schedule on the day they are assigned.Course WorkLabs. This course has a required lab component. The labs give hands-on experience and a chance to get help from other students or the instructor. Helping other students during the lab (and only during the lab!) is encouraged. Students will have to complete some lab exercises that must be turned in by the start of the following lab (a week later). Although students may collaborate on the labs, students must writeup their solutions individually. Identical or nearly identical solutions will be considered one individual lab and the students will share the points for that lab. For example, if three students submit identical writeups that are completely correct, then each student will receive a 33% on that lab. Late lab exercises will not be accepted. Lab exercises will also be posted online for those who miss the lab.Individual programming assignments. There will be two individual programming assignments, in addition to the weekly labs. These will be more sizable programs than the labs, and are intended to give students practice with creating larger programs from scratch. Assignments are due by the beginning of class. Late assignments are accepted until the solutions are posted, which is one week after the assignment was due. 10% of the total grade of the assignment is deducted for each late day. If the assignment is due on Wednesday at 11:15am (start of class) then a submission on Thursday at 11:30am is two days late and will lose 20%. A submission on Thursday at 11:15am is only one day late and will lose 10%. Final programming project. A final programming project will be due at the end of the course. The late policy for the final project is the same as for the programming assignments (see above). This project must be completed individually and it will be more ambitious than the other programs written in this course (including the first two projects). Quizzes. There will be 7 short (5 minute) quizzes throughout the semester to help make sure that students keep up with the material. They may be given at any point during the class including at the start of class. In general, they will not be announced in advance, but the first quiz will be given Monday, January 22nd. The lowest two grades will be dropped. If a student misses a quiz (for any reason), they will receive a 0, including if the student shows up late on a day where a quiz is given at the beginning of class. Exams. There will be two midterm exams and a final exam. The midterm exams will be in-class, written (no programming on the computer), and closed book/notes. The first midterm is tentatively scheduled for Monday, February 19th, in class. The second midterm is tentatively scheduled for Monday, April 2nd, in class. The final will be cumulative, but will emphasize aspects of the material covered after the second midterm exam. The final exam is scheduled for Sunday, May 6th from 3pm to 6pm in Stern 103 (our normal classroom). Note: the final exam date and time is scheduled by the registrar's office and will not be changed. Rescheduling or making up of exams will only be allowed for *compelling* circumstances. Arrangements must be made in advance for non-emergencies. Making up a missed exam will only be allowed with documentation from an appropriate person (dean, doctor, etc.). Attendance/Participation. To get full credit for participation, students should attend all lectures (MWF, 11:15-12:10, Stern 103) and labs (Th, 1:30-2:55, Gulick Hall 208). Students can miss, at most, three combined lectures and labs (for any reason). If a student misses more than three classes (combined lectures and labs), they will lose 10% of their attendance/participation grade per day missed. In addition, if a student misses a lecture in which a quiz is given, they will receive a grade of zero for that quiz. Students must also meet with the instructor once in the first two weeks of the semester (1/15 to 1/26). This meeting will take approximately 15 minutes. It is the student's responsibility to arrange a meeting time with the instructor. If a student fails to meet with the instructor within the first two weeks, then they will lose 25% of their attendance/participation grade. GradingAssignments: 10% (5% each)Quizzes: 10% (2% each) Labs: 25% (approximately 2.5% each) Midterm exams: 20% (10% each) Final exam: 15% Final project: 10% Participation, attendance, etc.: 10% Academic IntegrityThe Principle of Academic Integrity (see the HWS Catalogue, p. 33) governs the work completed in this course. The following outlines specifically how this principle applies.Exams and Quizzes. All exams and quizzes are to be completed solely by the student whose name is on the paper. Unless otherwise specified, these are closed book/notes, which includes any materials not provided as part of the exam/quiz. Labs. The labs are the only course activity where students can (and are encouraged to) work together. However, each student must write up their solutions independently, including both written answers as well as electronic files. Any help received from either a student, a tutor, a TA, or the instructor must be acknowledged in the lab write-up (i.e., name of person who helped and how they helped). In addition, each student must understand all submitted work and be able to explain this work to someone else. Copying part or all of someone else's solution is prohibited. Identical or nearly identical solutions will be considered one individual lab and the students will share the points for that lab. For example, if three students submit identical solutions, then each student will receive a maximum of a 33% on that lab (they will receive less for any errors found in the lab). Programming Assignments and Final Project. The programming assignments (excluding the labs) and the final project are to be completed individually. Students may not work with other students, including discussing ideas, offering debugging help, or looking at their programs. Students may receive debugging help from a tutor, but anything beyond debugging should be referred to the instructor or the TAs. Students must document and understand all the help received from the tutors, TAs, and the instructor (i.e., name of tutor/TA/instructor who helped and how they helped). Students may consult the book, their notes, any course materials provided in class or on the course website, and reference books found in the lab. Use of other materials (including websites) is not allowed. It is never acceptable for a student to be in possession of another person's program, either hardcopy or electronic (even if that person is not at HWS). Copying a programming assignment will result in a grade of 0 and, in addition, the case will be taken to the HWS committee on standards. For a second offense, the student will fail the course. Each programming assignment (and also each lab) submitted for credit will be checked by a plagiarism detector called MOSS (http://theory.stanford.edu/~aiken/moss/) to determine if it was copied. MOSS is highly accurate at detecting plagiarized software (changing a few variable names, comments, etc., will not help). In addition, any student that submits a suspicious program will have to explain their code to the instructor. If they are unable to effectively explain the code, then they will receive they will not receive credit for the assignment and the case may be taken to the committee on standards. Summary. The moral of the story is students should not cheat in this class. For each case of cheating, the student will receive a 0 on the assignment, and the case will be pursued with the HWS committee on standards (excluding labs, in which case the students will share the lab points). It is better to submit an incomplete solution than to submit a plagiarized solution. Center for Teaching and LearningHobart and William Smith Colleges encourage students to seek the available academic collaboration to demonstrate their best work. Students who would like to enhance their study skills, writing skills, or have any academic inquiries can contact the CTL. A Student with an identified disability who would like to receive accommodations, should provide the instructor with the necessary documentation from the CTL at the start of the semester (students with disabilities have to register at the Center), so that the instructor can best accommodate the student's needs. CTL staff encourages each student to stop by Harris Hall to learn what is available to HWS students at this academic resource. Students should contact the CTL at 781-3351 to make an appointment or stop by Harris Hall (on South Main, next to Merritt Hall) to meet with Center Staff.Resources
|