http://www.cse.wustl.edu/~cdgill/courses/cse332/
| Instructors: | Chris Gill | Terry Tidwell |
| Office Hours: | Lopata 400 (CEC Linux Lab) Wed 2-4pm, or by appointment | Lopata 400 (CEC Linux Lab) Wed 1-2pm and 4-5pm, or by appointment |
| Contact Info: | (314) 935-7538 or cdgill@cse.wustl.edu | ttidwell@cse.wustl.edu |
Programming assignments will be done in C++. Since most students enter this course with experience in Java, but not C++, the early portion of the syllabus is designed to assist your progress up the C++ learning curve.
If you encounter difficulties with C++ programming in this course, or if you simply would like to reinforce your C++ skills, you are strongly encouraged to enroll in CSE 232: Programming Skills Workshop, either before or during CSE 332S.
Lab: Lopata 400 (Linux Lab)
We will frequently read and respond to postings on the message board found in the course management system, and we encourage you to do the same. Please submit ALL questions, and concerns of a public nature, to the course management system's message board. Please also answer other people's questions there!
Please do not e-mail technical questions your instructors: instead, please post them on the message board for all to see, consider, and respond.
Please note that the message board is a vital part of your CSE 332 experience. Participation on the message board (i.e., quantity and quality of your posts) can count significantly toward your participation grade.
If you have trouble accessing the course management system, please let us know right away!
We'll use these textbooks both as references and for suggested readings to supplement the lecture material. The syllabus in the course management system contains references to suggested readings for each lecture. Please read the suggested pages before the class meeting, and please use the texts for reference while developing and debuggging your programs.
Labs are to be submitted electronically, and will be graded and
returned to you electronically as well. Each lab submission requires
a separate text file containing a lab report writeup. Each assigment web
page will describe the procedure for submitting the lab (via
make), along with the report format and content
requirements. Use of this process is required.
Early labs will be performed individually, though there will be an option for team lab projects in the last two labs. You should please submit your code and a lab report for each lab by its advertised due date and time, which is shown on the lab assignment web page. Labs submitted within 24 hours after the posted deadline will be accepted with a 10% penalty up front, and labs submitted between 24 and 48 hours after the posted deadline will be accepted with a 20% penalty up front. Labs submitted after that will not be graded, except in the case of documented extenuating circumstances.
You may discuss general questions related your projects with other students in lecture and labs, during lecture and lab hours respectively, and on the message board. While you are encouraged to post and ask for help on particular problems you may encounter during a project, you must design and implement your own solution, and prepare your own report. In particular, while posting small code fragments related to specific questions is allowed and encouraged, direct sharing, viewing, or other "reuse" of complete code files (especially if done covertly) is strictly forbidden. If you're not sure whether or not sharing a given section of code is ok, please ask your professor's permission before doing so.
The following labs have been assigned so far in the course:
In addition to the option textbooks, the following texts may be useful additions to your programming library:
Other information sources:
The midterm and final exams will be comprehensive: each will cover the material up to that point in the course. The best way to study for the exams is to keep up with the readings and programming assignments during the semester, and to ask lots of questions in class and on the message board throughout the semester.
The final grading component is an evaluation of your participation in the class, and an evaluation of your application of the tools and techniques discussed in class and labs. This component is separated out to:
| Labs | 55 % Lab 0: 2 % Lab 1: 5 % Lab 2: 5 % Lab 3: 8 % Lab 4: 15 % Lab 5: 20 % Midterm exam |
15 % |
Final exam |
25 % |
Participation |
5 % |
|
For this course, examples of cheating include but are not limited to:
This is a very serious matter. Anyone found cheating will at a minimum lose points equal to the assigned value for the assignment in question (for example if an assignment were worth 10% of the course grade then -10% of the course grade would be assigned), or possibly receive an F for the course. Further action may be taken in extreme cases, possibly including referral to the School of Engineering and Applied Science's formal academic integrity review process.
Furthermore, our policy is that we will make the final determination on what constitutes cheating. If you suspect that you may be entering an ambiguous situation, it is your responsibility to clarify it before the professor or teaching assistants detect it. If in doubt, please ask.
To ensure this policy is implemented consistently and fairly, and that any problems are detected and addressed as early as possible, we may make use of automated program similarity checkers to verify uniqueness of submitted program solutions.