Syllabus for 15-111: Intermediate / Advanced
Programming
|
Final Grade |
|
|
|
|
|
|
|
|
|
|
|
Exams
There will be 2 written exams, and a programming exam. The Midterm and
Written Final exam will a written
paper and pencil format. Each of these exams will be 75 - 90 minutes in
length.
The Final is on online programming exercise. This exam will also be 75 - 90 minutes in length.
Each of these exams will be discussed in detail at the appropriate time.
Coursework
There are 5 weekly scheduled labs in this course, although this may be
subject to change. There will also be
written exercises, and/or smaller programming assignments. The
programming assignments may be complete programs or tasks such as
finding syntax errors, debugging code, and modifying existing code to
make algorithms more efficient, code to understand concepts etc. It
must be remembered that these are unsupervised activities, and that the
grade given for these is not a measurement of what is learned but how
well the specifications of the assignment have been met. There is
no extra credit.
Quizzes
There may be unannounced quizzes during recitation, with a focus on
the previous days work. These are part of the coursework grade.
You are almost certain to run into 3 types of problems, technical, algorithmic and debugging. Technical problems frequently occur with computers you use. Computers often break. Therefore waiting till last minute may be hazardous to your health.
Secondly most program algorithms are not trivial. They need back and forth discussions with your instructor, course assistants and your colleagues. Even if there are no technical or algorithmic problems, there is no guaranty that your program will work. Students frequently run into syntax and semantic problems in a program.
Programs don’t always necessarily give the correct output. Making a program almost "perfect" requires much testing. Therefore START AND FINISH YOUR PROGRAMS EARLY.
There is a difference between activity and achievement. As the course goes along, and you find that you are spending what you consider an extraordinary amount of time completing assignments, please get together with me or one of the TA's to discuss how you are working. Programming is a skill and with practice you should be developing some efficiency. We can provide insight and ideas if you think this is not happening.
Violations will not be tolerated. Appropriate disciplinary actions include loss of computing privileges, course failure, and ineligibility for subsequent courses offered by the Computer Science Department,dismissal from the University and/or criminal prosecution. At minimum, any student who violates these rules can expect to find his/her access to facilities revoked. Prohibited behavior includes but is not limited to
Programming projects may be examined with a comparability checker that looks for similarities among different programs. Except for the case of working with a partner, make sure that the work you submit is your own work.
The tutors are in Wean 5419 are there to help you. Please don't make undue demands on them. There is a difference between asking questions versus expecting a tutor write your program for you. Since you are required to work with computers in this course, you must remember that computers frequently break. Also remember that the cluster is shared with the students from other courses and sections, so it is clearly to your advantage to complete labs and program assignments in advance of the due date. We will do everything reasonable to ensure a high level of support, but remember that occasions arise when the computers are simply not available, so we solicit your patience. If you notice a machine that is inoperable, please inform the staff.