## Syllabus

### The Text

C++ for Everyone, by Cay Horstmann, Wiley (ISBN 978-0-470-92713-7). This book is relatively new and represents a solid introduction to problem solving in general as well as C++ syntax. You may be able to get a discounted version from an internet bookstore.

### The Wiki

News and updates will be posted to the class wiki, which serves as the class web site. Please use the discussion tab on each page to discuss and give help for class assignments. Also place comments on the wiki if there are errors so that they may be quickly corrected.

Note that changes to class assignments, policies and due dates will be posted on the wiki.

You can use your browser to access an RSS feed of changes if you like.

### Working Together

As you know, cheating is not in line with the Honor Code. We will not tolerate it. Sometimes, however, there is a question as to whether a certain behavior is going to be deemed cheating. The policy in this class is a “no take away” policy. If you are to join together in groups to work on labs, the policy is that you take nothing away with you that you did not bring. In other words, you should not have new answers or code written when you leave that you did not have when you arrived. You are encouraged to get together, discuss the work, and work out principles and concepts.

If there are further questions, please do not hesitate to ask. The policy is not there to cause pain, but to offer protection for the innocent. I am very reasonable and will be happy to clarify or alter any ambiguous or stupid policies.

### Labs

There will be several labs assigned during the course. The labs come in rapid succession and are nontrivial, so do not delay. Get started on them immediately. Check the wiki frequently, as updates and useful information will appear almost daily.

Most of the concepts covered will have an associated lab. It is thus very important that you understand the labs fully, since those will be an important part of your practice for the midterm and final exams. They have been designed to be useful and to have direct relevance to the concepts you are learning. Do not fall behind! If you are struggling with a lab, seek TA help before it comes due. Extraneous circumstances will be mercifully considered, provided that they are not self-made emergencies that occur on or after the due date.

Late labs will receive a 10% penalty for every day late (absolute points - a score of 75% will be 65% after one day late, not 67.5%). Saturdays, Sundays and Holidays do not count as additional days late, that is, if something is due on a Thursday and it is submitted at or after 12:01 AM Friday it is one day late. If it is submitted at or after 12:01 AM Monday it is two days late, as is all work submitted until 12:01 AM on Tuesday. Starting at 12:01 AM on Tuesday the work is three days late. The maximum late penalty is 50%.

No work can be accepted after the last regular day of class. Note that neither the days of the final exam nor the reading days are regular days of class. Once we get to the reading day, we can not accept any work. Anything submitted (or still not submitted) after the last regular day of class will not be graded and will receive a grade of 0. This is a university rule, and I, like you, am bound by the honor code.

You can work on the labs in 1119 TMCB or any other room in the TMCB with windows machines. All labs will be passed off in person to one of the TA's in or near one of the open computer labs. The TAs will be in 1119 TMCB when you have questions or are ready to pass off. If you need help from a TA (and you are working in the lab), please use the help request queue:

http://aml.cs.byu.edu/~kseppi/cs142help.html (note, there are still a few bugs with the queue so if you have waited a few minutes and see a TA sitting at their computer don't be afraid to say something).

#### Submitting Labs

All labs are to be passed-off in person to a TA. This constitutes “turning in” your lab. To pass-off please put your name in the help request queue:

#### Late Days

As described before, assignments lose 10% of their grade with each day that they are late up to a maximum of 50% off.

### Exams

There will be two midterms and a final. Both midterms and the final will be comprised each of a programming exam and a written multiple choice exam in the testing center. Please note that questions for the testing center portion of the midterm will be drawn from reading quizzes. The programming portion of the exam will be similar in format to lab assignments. The programming portion is open-book, open-web, but closed-friend and closed-TA. Please do not discuss the midterm with other students until after the midterm or final has ended.

Assignments and exams given throughout the semester are categorized and weighted according to the following schedule:

       Category            Weight
Quizzes              10%
Class Participation   5%
Labs                 40%
Midterm 1            15%
(Multiple Choice: 5%; Programming: 10%)
Midterm 2            15%
(Multiple Choice: 5%; Programming: 10%)
Final                15%
(Multiple Choice: 5%; Programming: 10%)

   A    93.3 - 100%
A-   90 - 93.3%
B+   86.7 - 90%
B    83.3 - 86.7%
B-   80 - 83.3%
C+   76.7 - 80%
C    73.3 - 76.7%
C-   70 - 73.3%

#### Class Participation

We will have a variety of activities in class. You are expected to participate. Class members will be called on from time to time. If you are not there I will note that you are not and try again later. Eventually I will run out of time for you to get your share of class participation, and your absence will affect your grade.

I will also allow you to receive some class participation credit by making a substantial contribution to the course (correct several webpage errors, suggest a major improvement to a lab, help me learn something new, etc.).

Reading and quizzes go hand in hand. You should plan to do the quiz every Monday, but holidays, and add/drop activities will cause the actual due date to vary. Quizzes are due before the expiration date (and time) specified in blackboard. You cannot take the quiz late.

The Quizzes generally have two parts:

1. A small programming exercise generally based on the material from the last week.
2. Multiple choice questions from the material to be discussed in class during the coming week.

You should do the reading, then answer the quiz on blackboard. (These quizzes are open book.) We do not expect your reading to be in-depth. We do expect you to read before the associated class period, but that reading should not be an attempt to memorize or completely understand everything. Get the broad strokes. Get an initial exposure to the material. Don't worry if you don't get everything the first time. Bring your questions to class.

You may find yourself re-reading some sections after class and as you do the labs. Be sure to review the correct answers after completing the quiz. The multiple choice questions are used on the midterms and finals.

Your grades are available online from blackboard. I will do my best to get things recorded correctly, but if something is not correct please point it out to us as quickly as possible (while things are still fresh on our minds). Start by discussing the matter with a TA. If you are unable to get the matter resolved, let me know.

#### Testing out of the class

If you feel you already know the material, please see me and we can make arrangements for you to test out of the class. Use the following link to start the process. To avoid confusion, remember that the required labs are not from this particular section of CS 142, but rather from Pro. Burton's class.

### University and Department Policies

I will follow all university and department policies, including, but not limited to, the following:

#### Dress and Grooming

Besides being part of the Honor Code, which every one of you has agreed to abide by, it is important that you obey the dress and grooming standards.

#### Harassment

The following is BYU's statement on preventing sexual harassment:

Title IX of the Education Amendments of 1972 prohibits sex discrimination against any participant in an educational program or activity receiving federal funds. The act is intended to eliminate sex discrimination in education. Title IX covers discrimination in programs, admissions, activities, and student-to-student sexual harassment. BYU's policy against sexual harassment extends not only to employees of the university but to students as well. If you encounter unlawful sexual harassment or gender based discrimination, please talk to your professor; contact the Equal Employment Office at 378-5895 or 367-5689 (24 hours); or contact the Honor Code Office at 378-2847.

#### Computer Abuse

Quoted from the CS department computer policies:

Accounts on Computer Science Department computers are privileges to be used in conjunction with and in support of various related Computer Science classes. Abuse in any form will result in immediate suspension of your account(s). If an abuse involves a violation of the honor code, you will be referred to University Standards. If an abuse involves illegal activity, appropriate authorities will be notified. In either case, you will be immediately dropped from all Computer Science Classes you are enrolled in. Some violations are punishable by expulsion from the University. Your keystrokes may be monitored and saved. Examples of abuse of your account include:

• Transfer or storage of pornographic or illegally duplicated material.
• Use of your account to probe or crack security systems, including passwords, or to intercept information intended only for others.
• Sending mass, commercial, obscene, or harassing email or usenet news posts.
• Misusing your lab privileges, including game playing, and especially actions which could cause damage, such as rebooting a workstation.

#### Disabilities

The following is BYU's statement on students with disabilities:

Brigham Young University is committed to providing a working and learning atmosphere that reasonable accommodates qualified persons with disabilities. If you have any disability, which may impair your ability to complete this course successfully, please contact the Services for Students with Disabilities Office (378-2767). Reasonable academic accommodations are reviewed for all students who have qualified documented disabilities. Services are coordinated with the student and instructor by the SSD Office. If you need assistance or if you feel you have been unlawfully discriminated against on the basis of disability, you may seek resolution through established grievance policy and procedures. You should contact the Equal Employment Office at 378-5895, D-282 ASB.

#### Children in the Classroom

The following is BYU's statement on Children in the Classroom:

The study of Computer Science requires a degree of concentration and focus that is exceptional. Having small children in class is often a distraction that degrades the educational experience for the whole class. Please make other arrangements for child care rather than bringing children to class with you. If there are extenuating circumstances, please talk with your instructor in advance.