CS 170 Introduction to Computer Science I, Fall 2013, Section 004
TuTh 10:00-11:15am MSC W301
Instructor: Dr. Valerie Summet (valerie [at] mathcs.emory.edu)
OverviewThis course is an introduction to computer science for the student who expects to make serious use of the computer in course work or research. Topics include: fundamental computing concepts, general programming principles, the Unix Operating System, and the Java programming language. Emphasis will be on algorithm development with examples highlighting topics in data structures. This course is the first of a two semester sequence for computer science majors and is followed by CS171.
Textbook"Introduction to Java Programming", Brief Version, 9/E, Y. Daniel Liang, 2012. You can get an older edition from Amazon if you wish.
For reference, you can also review the online lecture notes available from Prof. Cheung.
PrerequisitesThere are no prerequisites although some familiarity with email and web browsers will be helpful. We assume knowledge of high school algebra and basic problem solving skills.
LabsWe have one hour of scheduled lab time per week but plan on spending considerably more time than that in front of a computer this semester (either in the lab or working from home) to work on your projects. In the weekly lab we will focus on learning tool skills and practice/reinforce concepts learned in lecture by writing small programs. You will generally receive full credit for turning in a functioning lab assignment. Most labs will be due by midnight the day they were assigned. Please make every effort to attend labs. Weekly labs will begin after drop/add/swap.
Attendance policyAttendance to lectures is not required and I do not take attendance. However, it is highly recommended and encouraged. When you miss a lecture, you are responsible for catching up with the material. The instructor/TA will not give you a "catch up lecture" but is happy to answer specific questions on the teaching material during office hours. You will also be given unannounced pop quizzes during class. If you are not present, you cannot make up the quiz.
Attendance in lab is mandatory (because you must turn in the lab assignments).
AssignmentsProgramming assignments will involve designing, coding, testing and debugging non-trivial programs based on a written assignment specification. Programs involve a conceptual understanding of language features as well as skill with various software tools. With programming it is important to "work smarter, not harder." Unskillful approaches can lead to long, tedious, unsuccessful hours of work. The right approach can help you write correct, easy-to-understand and efficient code with minimal effort.
Programs must be completed individually although you are welcome to discuss general principles and concepts about the assignments with other students, the instructor, and the TA(s). (See the below section titled "Collaboration" for appropriate collaboration policies.) You will be able to work on your programs in the Math/CS Lab (MSC E308), or on your personal desktop or laptop. Be sure to check the lab schedule as the lab is NOT open 24 hours.
Assignments must be turned in before the date and time indicated to be considered "on-time". Assignments will be accepted up to the next class period, but late assignments will have their score reduced by 10%. Assignments later than the next class period will receive no credit. I am happy to work with you if you have an extenuating circumstance (religious holiday, University activity, etc.) and you let me know in advance.
ExamsWe will have two closed-book midterm exams (Oct. 10 and Nov. 14) and a final that will test your conceptual understanding of the material and will require some attention to programming details. Doing well on the exams strongly correlates to reading and understanding the textbook! Questions will be a mix of filling in the blanks, multiple choices, and short answers. They will sometimes require you to write or analyze short bits of code. Old exams and study guides will be made available prior to each exam and solution keys will be provided after the exams.
Final ExamThe final exam will be during the Math Block final. It WILL NOT be during the time scheduled via class period. This semester, the final exam will be Wednesday, Dec. 18th, 6:30-9:00pm. DO NOT make plans to leave campus before the final exam. The final exam will not be rescheduled except in emergency cases with documentation provided by the Academic Advising Office in the Office of Undergraduate Education.
GradingYour grade will be determined by a weighted average of all the graded items. Grades will typically be adjusted at the end of the semester so that the class mean falls in a B-/B range. Although the numerical grade you receive for each assignment will be a raw, unadjusted score, you will be given the class median and mean for each exam so that you may gauge where you stand.
I will maintain your grades on Blackboard so that you may track your progress. Should you find a grade recorded incorrectly, please bring it to my attention immediately.
Electronic devicesDo not let your use of electronic devices such as laptops or iPads disturb other students. Use of cellphones is not allowed during my classes. You will be asked to leave class if you are disturbing me or other students in any way.
Email policyPlease use your official Emory email when emailing regarding this class. I will not discuss grades or other academic records via non-official email accounts such as gmail, yahoo, etc.
I try to answer all emails within 24 hours during the work week. If you have not received a response within that timeframe, please resend your email.
Honor codeAll material in this course is covered by the Emory Academic Honor Code. All students are expected to be familiar with and follow Emory's Honor Code, particularly Article 4: Academic Misconduct. Additionally, all students are expected to read, understand, and follow the Math/CS Department's Statement of Policy on Computer Assignments (SPCA).
If you have any questions about what does or does not constitute academic misconduct for this course, you should contact the instructor for an explanation. Ignorance is not an excuse. Academic misconduct in my courses is not tolerated, will be prosecuted vigorously, and will be referred to the Honor Council immediately.
Collaboration with other students in this CS 170 class is an important learning method. However, collaboration should not extend to cheating (unauthorized assistance from others) or plagiarism (copying someone's work without attribution). The following guidelines will help you understand the difference between collaboration and plagiarism.
AccommodationsEmory University complies with the regulations of the Americans with Disabilities Act of 1990 and offers accommodations to students with disabilities. If you are in need of a classroom accommodation, please make an appointment with me to discuss this as soon as possible. All information will be held in the strictest confidence. It is the policy of Emory University to make reasonable accommodations for qualified students with disabilities. All students with special requests or need for accommodations should make this request in person as soon as possible.
Surviving and Thriving: