RIT Department of Computer Science
4003-241: A Problem-Based Introduction to CS
This course introduces computer programming using a problem-centered approach. Specific topics covered include:
Assignments are an integral part of the course. In-class, lab and homework assignments require writing, drawing, developing pseudocode, programming a solution, testing, and analysis of results.
Credit: 4, Prerequisites: None
Course Web Page: http://www.cs.rit.edu/~vcss241/
Textbook: Visual Quickstart Guide: Python, Second Edition, Toby Donaldson. PeachPit Press, Berkeley, CA 2009.
At the end of this course, students will be able to:
If you have special needs for seating, tests, note-taking services or other matters related to a disability, please contact the Disability Services Office (www.rit.edu/dso). If you receive approval for accommodation within the course, please contact the instructor as soon as possible so that they can make the necessary arrangements.
The lecture instructor is responsible for giving you grades on your exams and homework, as well as determining your final grade for the course. The course grade is based on the following work:
|Homeworks||20%||8 assignments; see MyCourses for dropbox deadlines.|
|Labs||30%||8 assignments; actual deadlines are in the dropboxes of MyCourses.|
|Midterm Exam||20%||1.5 hour, written (13%); 45 minute in-lab (7%). Given during week 5.|
|Final Exam||25%||2 hour, comprehensive, written exam. Given during week 11.|
|Instructor Discretion||5%||participation and attendance.|
The course grade is based on a maximum of 100%:
|Letter Grade||Numeric Range|
Questions may arise regarding an item of graded work. Grade appeals must be raised within one week after the day on which the grade was received. Otherwise, a grade becomes permanent one week after the student received the grade.
This course meets for five hours each week. There are two hours of Lecture, two hours of Lab, and one hour of Recitation each week.
The first class of the week is a 2 hour lecture with your lecture instructor and is held in a classroom with all students in the class.
During the first class your lecture instructor splits the class into two groups (A and B). The first group finishes the week with a Lab session followed by a Recitation session. The second group finishes the week with a Recitation session followed by a Lab session. After the midterm the groups reverse their meeting times for Lab and Recitation.
Labs meet for two hours each week. The first hour meets in a classroom where students participate in a team problem solving session using pen and paper (i.e. developing algorithms and pseudo code for a particular problem).
The second hour meets in a computer lab where students individually implement the algorithms from the pen and paper exercise. The lecture instructor leads the Lab's problem-solving segment with the assistance of the Student Lab Instructor (SLI). The SLI leads the in-lab segment and grades the Lab assignments. The lecture instructor grades the Lab's problem-solving segment.
Recitation meets in a classroom during the second scheduled hour and is run by a CS Teaching Assistant (TA). The Recitation is designed to reinforce the student's understanding of the material covered in lecture. Normally the TA reviews the previous week's assignments, provides exercises for practice, and answers questions related to the course.
Recitation is required for all students. The TA takes attendance at Recitation and provides it to the lecture instructor.
Labs have team and individual components. The first hour is a studio, problem-solving session (PSS) where students work in teams to define solutions to problems using pen and paper. Teams present their solutions to one another and their instructor at the end of the hour.
Failure to attend a PSS will result in a 20% grade reduction.
In the second hour, students move to the computer laboratories to begin implementing solutions individually, with Student Lab Instructors on-hand to offer guidance and clarification. Students receive the weekly Lab assignment materials during the problem-solving segment of the lab. Please note that lab material is not posted online. It is your responsibility to attend every lab on time. A portion of your grade for each Lab is based on the team exercise.
Lab assignments are due usually one week later at the end of a day (2 AM) of the following week. Actual deadlines are in the dropboxes of MyCourses. Your lab grade is computed using the scaled sum of all the individual lab assignments. There are no makeups on Labs that you do not submit. However, Lab submissions have a LATE submission box open no more than 24 hours later than the normal box; such late submissions carry a 20% grade penalty.
Instructors collect pen-and-paper team work during the Lab session. The programming portion of the Lab must be submitted online through MyCourses. It is your responsibility to make sure that you submit all work in a timely manner.
The only part of team-developed work is the joint problem-solving hard-copy; All other Lab and Homework assignments must be the result of individual effort, not team effort. Development of code for Labs, Homeworks, or other graded work is an individual responsibility. Submitting work written by others or as a team is considered an act of academic dishonesty.
Homework for the week is posted through a link on the course website. Homework questions are completed individually and include a combination of programming problems and written questions.
Each homework is due at the end of the week in which the homework was assigned (either Friday, Saturday, or Sunday night). Your homework grade for the course is computed using the scaled sum of all homework assignments. There are no makeups on homeworks which you fail to submit, and there is no late submission. An unsubmitted homework receives a 0 grade.
The homework must be submitted online through MyCourses. It is your responsibility to make sure that you submit all your work in a timely manner.
The course has two exams, one midterm and one final. The midterm examination includes both a written exam, and an individually completed, in-lab problem-solving component: the practical exam. The final exam has only a written component.
During midterm week there is no presentation of new material, and there is no assigned homework or lab. Instead, there is a 2 hour written test period, two 1 hour, practical examination periods, and one recitation review period. The practical examination is a 50 minute, timed test of design, implementation and testing skills. The practical examination takes place in a computer-based lab. The first group takes the practical during the first scheduled practical period, and the second group takes it for the next scheduled practical period. The TA conducts a review during the Recitation Session. See the schedule for the details of the exam week schedule.
A comprehensive and common final exam is given to all sections at the same time during the regularly scheduled final exam period. The date of the final is typically announced by the sixth week of the quarter. You must take the final exam at the time scheduled for your section. Finals are not given early, and there is no makeup exam. The final is comprehensive and covers material from the entire course, including Lecture, Lab and assigned readings in the textbooks.
Instructors will reschedule exams only in difficult situations for which there is formal documentation for the situation (e.g. a hospital record). Sleeping through the exam, cars problems, and similar excuses are not valid reasons for missing an examination and requesting a make-up exam.
RIT has several policies on rescheduling to handle final exam conflicts.
A student must submit a written request for rescheduling to the head of their home department, with a copy of the request given to the instructor(s) affected by the request to provide a rescheduled final exam. This request must be completed by the end of the sixth week of classes. We strongly recommend that students first discuss their situation with all instructors involved.
Of special relevance are these cases of exam conflicts:
Students may obtain help from the following sources:
RIT policy allows you to withdraw from a course with a grade of W on or before the Friday of the eighth week in the quarter. After this date, your instructor cannot give you a W; they must assign a grade based on your work. Incomplete grades are given only in exceptional circumstances, and only when arrangements have been made with the lecture instructor before the end of the quarter.
The only part of team-developed work is the joint problem-solving hard-copy; All other Lab and Homework assignments must be the result of individual effort, not teamwork. Development of code for Labs, Homeworks, or other graded work is an individual responsibility. Submitting individual work written by others or as an unsanctioned team is considered an act of academic dishonesty.
Although students may discuss assignments and projects with others, all individually submitted writings and code must be created independently by the student and not copied from others or other sources (e.g. web pages).
Team-developed work also must be created solely by the team members and not copied from others or other sources unless with prior instructor approval.
In cases where a student is suspected of cheating or copying material, the instructor shall act in accordance with http://www.cs.rit.edu/programs/academicIntegrity, the Department of Computer Science Policy on Academic Integrity.