CSc 127A (Introduction to Computer Science I) Syllabus
Spring 2015
[Catalog] == [Personnel] == [Resources] == [Outline] == [Dishonesty] == [Grades] == [Class Policies] == [University Policies] == [Caveat]
General Catalog Information:
Description: | Programming in an object-oriented language such as Java with an emphasis on program development. Topics include types, control structures, classes, arrays. Weekly laboratory. This course cannot be taken if a student has credit in a higher level computer science course (C SC 245, 252, and all 300- and 400-level courses). These students will be dropped. Students with unusual circumstances should consult with a departmental advisor. | ||||||||||||||||||||||||||||||||||||||||
Lecture: | Mondays and Wednesdays, 4:00 p.m. - 5:15 p.m., BIOE 100 | ||||||||||||||||||||||||||||||||||||||||
Recitations: | Here are the section times and locations: | ||||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||||
Please note: Sections will not be held the first week of classes. | |||||||||||||||||||||||||||||||||||||||||
See the Personnel section, below, for section leader contact info. | |||||||||||||||||||||||||||||||||||||||||
Each recitation section is led by an undergraduate section leader (SL). We require attendance at the weekly section meetings to give you the opportunity to work on more examples that tie in with the lecture topics, to allow you to ask questions about things you saw in recent lectures that you didn't fully understand, and to allow us to offer clarifications on homework and programming exercises. Other things might happen in section, too, such as quizzes, group projects, and exam preparation and reviewing. | |||||||||||||||||||||||||||||||||||||||||
Prerequisite(s): | College Algebra. | ||||||||||||||||||||||||||||||||||||||||
We expect that you possess basic mathematical skills. Computer programming and mathematics often intersect, and will in this course. | |||||||||||||||||||||||||||||||||||||||||
Credits: | 4 | ||||||||||||||||||||||||||||||||||||||||
Final Exam: | Friday, May 8, 2015, 3:30 p.m. - 5:30 p.m. The final is comprehensive and will be given on this date at this time. Make your travel plans accordingly. |
Class Personnel:
Name | Office | Email(.arizona.edu) | Phone | Fax | Office Hours | Lab Hours | |
---|---|---|---|---|---|---|---|
Instructor | Lester I. McCann, Ph.D. | G-S 720 | mccann@cs | 621-3498 | 621-4246 | T 2-4, W 11-12 | --- |
SL | William Grijalva | G-S 228 | wgrijalv@email | ----- | 621-4246 | TBD | [1] |
SL | Jason Harris | G-S 228 | jasonharris@email | ----- | 621-4246 | TBD | [1] |
SL | Patrick Hickey | G-S 228 | patrickhickey@email | ----- | 621-4246 | TBD | [1] |
SL | Cody MacDonald | G-S 228 | robertcmacdonald@email | ----- | 621-4246 | TBD | [1] |
SL | Christian Montoya | G-S 228 | christianmontoya@email | ----- | 621-4246 | TBD | [1] |
SL | Jacob Rochester | G-S 228 | jacobrochester@email | ----- | 621-4246 | TBD | [1] |
SL | Allan Smith | G-S 228 | smithal@email | ----- | 621-4246 | TBD | [1] |
SL | Jason Steving | G-S 228 | jasonsteving@email | ----- | 621-4246 | TBD | [1] |
SL | Cindy Trieu | G-S 228 | cindytrieu@email | ----- | 621-4246 | TBD | [1] |
[1]: The 127A section leaders, along with those of 127B, have lab hours in the Gould-Simpson 228 lab. The lab hour schedule will be determined during the first week of classes, and posted in the lab. You can ask questions of any of the SLs staffing 228; they (should!) all know the material.
Each of the SLs has successfully completed this class (or its equivalent) and is paid by the Department of Computer Science to help me help you learn the material. In addition to leading a section each week, they grade your programming assignments, do the bulk of grading on the exams, let me know what topics seem to be especially baffling to the students, and hold lab hours in the Gould-Simpson 228 lab. I expect that you'll find your section leader to be a valuable resource.
Please keep in that that it is possible to meet with your SL or me outside of office hours. Contact us to make an appointment.
Information Resources:
Homepage: | http://www.cs.arizona.edu/classes/cs127a/spring15/ |
Textbook: | Our textbook is "Java for Everyone: Late Objects" by Cay Horstmann. The book is available in four formats: Paperback (new and used), E-Text, Mobile Access Pack (e-text plus some printed material; no, I don't know what it is), and Loose-leaf. You need only one of these! To make things more interesting, the book is also available for free as an ebook from Safari Online, a service provided by the U of A Library. Unfortunately, the licensing restriction is that only 10 people at a time can access that version, making it inappropriate for use by a class of ~200 students. Use it at your own risk. |
Class Discussions: | We will be using Piazza for outside-of-class discussions and announcements. Click here to access the CSc 127A discussion area. |
Course Objectives and Expected Learning Outcomes:
Topics | Sections In Text |
---|---|
1. Historical Perspectives | 1.1 - 1.3, Lecture Material |
2. Programming Basics | 1.4 - 1.6, 2.1 - 2.2, Lecture Material |
3. Input and Output | 2.3 |
4. Problem Solving | 2.4, Lecture Material |
5. Characters and Strings | 2.5, Lecture Material |
6. Graphics Primitives | Lecture Material |
7. Selection | 3.1 - 3.4, 3.7 |
8. Iteration | 4.1 - 4.3, 4.7, 4.8 |
9. Modular Program Design | 5.1 - 5.5, 5.8 |
10. Arrays and Searching | 6.1 - 6.4, 6.7, 7.3, 14.6 |
11. Objects | 8.1 - 8.7, 8.10, 6.8 |
12. Files | 7.1 - 7.2 |
13. Sorting | 14.1 - 14.3 |
14. Miscellaneous | TBD |
Topics may be added, removed, or reordered as time and circumstances dictate.
Academic Dishonesty (i.e., Cheating):
See Also: | • The Department of Computer Science Course Policy on Collaboration: http://www.cs.arizona.edu/policies/collaboration.html |
• The University of Arizona Code of Academic Integrity: http://deanofstudents.arizona.edu/codeofacademicintegrity | |
• The Arizona Board of Regents list of Prohibited Conduct: https://azregents.asu.edu/rrc/Policy%20Manual/5-303-Prohibited%20Conduct.pdf | |
• The Arizona Board of Regents Student Code of Conduct: https://azregents.asu.edu/rrc/Policy%20Manual/5-308-Student%20Code%20of%20Conduct.pdf (see part (f) in particular) |
Most, if not all, assignments in this class will be individual assignments, to be worked on outside of class. All individual work assigned to you in this class is to be completed only by you. It is not acceptable for you to `borrow' (a.k.a. steal, copy, coerce, etc.) solutions or parts of solutions from other people or have other people write part or all of your solutions for you. Yes, getting answers and solutions from the Internet is a violation of academic dishonesty! However, it IS acceptable (and encouraged!) for students to help one another understand the assignment requirements and other high-level issues. In short, do your own work, but feel free to discuss conceptual difficulties with each other. Of course, you may always ask me or a SL for help, but don't expect that we'll just hand you solutions; we'll make you work for them. Doing is learning!
The class policy on cheating is simple: If we determine by a preponderance of the evidence that a student or students violated one or more of the policies of academic conduct governing this class, at minimum all complicit students will receive no points for the academic activity or activities in question. Additional sanctions are possible depending on the circumstances of the offense(s) and the policies of the department, university, and Arizona Board of Regents, up to and including expulsion from the university. The CS department exchanges information about academic integrity violations with the office of the Dean of Students. If you have a history of violations, the penalty is likely to be much worse than just a zero on an assignment. Multiple violations in this class will result in a recommendation of a failing course grade, at minimum. We take academic dishonesty very seriously, as you should be able to tell; we expect you to take it just as seriously.
Please take the time to read the references linked above. Ignorance of the policies is not an acceptable excuse for their violation. For your convenience, here is the section of the University's Code of Academic Integrity entitled "Prohibited Conduct":
Conduct prohibited by this Code consists of all forms of academic dishonesty, including, but not limited to: 1. Cheating, fabrication, facilitating academic dishonesty, and plagiarism as set out and defined in the Student Code of Conduct, ABOR Policy 5-308-E.6, E.10, and F.1. 2. Submitting an item of academic work that has previously been submitted without fair citation of the original work or authorization by the faculty member supervising the work. 3. Violating required professional ethics rules contained or referenced in the student handbooks (hard copy or online) of undergraduate or graduate programs, or professional colleges. 4. Violating health, safety or ethical requirements to gain any unfair advantage in lab(s) or clinical assignments. 5. Failing to observe rules of academic integrity established by a faculty member for a particular course. Attempting to commit an act prohibited by this Code. Any attempt to commit an act prohibited by these rules shall be subject to sanctions to the same extent as completed acts. 6. Assisting or attempting to assist another to violate this Code. |
The bottom line: Do your own work! If you have any doubts, please come talk to us -- before you do anything you might regret.
Grades and Grading:
Section Attendance and Activities | = | 12 | % | total |
In-Class Activities | = | 12 | % | total |
Programs | = | 31 | % | total |
2 Midterm Exams | = | 30 | % | total |
Comprehensive Final Exam | = | 15 | % | |
Total | = | 100 | % |
The final exam may be optional; I will make that decision after the second midterm.
I use the common 90-80-70-60 grading scale. It's possible that final grade cutoffs will be lowered a little (from 90% to 88.5% for the bottom of the 'A' range, for example) but they will never be raised. I make such decisions near the end of the term.
You will be expected to regularly attend your weekly section meetings. To help encourage you to do so, your SL will be taking attendance each week. Hopefully, you will find the sections to be useful enough that you won't need the encouragement.
A typical section meeting will start with a presentation from your section leader, followed by a pair-programming activity in which you work with another student to complete one or more programs or other tasks. Students who do not take section seriously and/or are uncooperative or disruptive risk losing credit for attending and participating in section.
About once a week, we'll have some sort of in-class activity. These will often be small-group (2-4 students) exercises that are directly relevant to that day's lecture topic(s). Sometimes, they will be individual activities, such as quizzes. Either way, we will be collecting and grading these activities.
The Department of Computer Science labs in Gould-Simpson 228 and 930 will be available for your use for the programming assignments. Many students find it convenient to work on the assignments at home; I expect that all of the software we use in this class will be freely (and legally!) available for you to download and install on your home computer, or you can remotely connect to the lab systems from home. If you do decide to use a system outside of our department's control for your work, it's your responsibility to learn how to set it up and use it effectively. In addition, you'll be required to electronically transfer ("turnin") the source code to us before the due date. Expect us to compile and run your programs on CS department machines to verify their completeness and correctness, so be certain that your programs run completely and correctly on a department machine before you submit it.
Java 1.7, though 1.6 or 1.8 are fine.
My code documentation and style guidelines are available from the class web page. Documenting code is not the most enjoyable activity you'll ever experience, but it is important to do, and to do well. Program documentation/style is worth about 25% of your score on a program.
Each programming assignment will have a clearly stated due date and time. Normally, programs will be due at 9:00 p.m. Thursday nights. Electronic submissions received after that time will be considered late. Programs submitted within the first 24 hour period after the due date and time are considered to be one day late. Submissions received within the next 24-hour period are two days late, etc. Any day of the week, including Saturdays, Sundays, and holidays, count as days for the purpose of determining lateness.
At the start of the term, you are granted five no-penalty late days. Each time a program is submitted late, you will lose no points until you have exhausted your late days. When your late days have been exhausted, you will lose 20% per day the program is late. After five such deductions, your score for that program will be zero.
For example, if a program is due at 9 p.m. on the 12th but you submit your code at 10:30 p.m. on the 13th, it is considered to be two days late. If you had three late days remaining, you'd lose two of them but would still be able to earn full credit on the assignment if it works correctly and is well-structured and well-documented. If you had only one late day remaining, you'd lose it and 20% (that is, your program will be graded out of a maximum of 80%).
Final detail: No matter how many late days you have saved, no program will be accepted after 11:59 p.m. on Reading Day (a.k.a. Dead Day).
You are expected to thoroughly test your programs before submission to verify that they handle the expected variety of inputs properly. Should your program fail to perform properly when tested, points will be deducted based on the quantity and severity of the errors. The deductions for each type of error will be determined for each programming assignment and will be applied consistently to all submitted programs. If you feel that a program was graded improperly, please see your SL to discuss your concerns.
We deduct points from imperfect programs so that you know where you need to improve on future assignments. If you don't understand why you lost points for a particular problem, or you would like to hear specific suggestions for improvement, we want you to come talk with us about your concerns.
For this discussion to be most productive, you should contact your section leader and arrange a mutually-agreeable meeting time. Come to the meeting with a list of your specific questions and concerns (so that you don't forget anything).
If, after this meeting, you are not satisfied, make an appointment to discuss your concerns with me. Always meet with your section leader first; s/he has first-hand knowledge of the grading.
To keep grading discussions from dragging out across the semester, you need to let your section leader know about your grading concerns within a week of your section (not you individually) receiving the graded assignment, unless there are exceptional circumstances. Any complaints about scores received after that week will not result in any score changes (but we'd still be happy to talk about your concerns).
Exam formats will be fairly consistent throughout the semester. Exams will consist primarily of short answer, problem-solving, and code-writing questions. The use of calculators or any other electronic devices is NOT permitted on exams unless warranted by special circumstances.
I expect all students to take the exams at the announced exam times. I give make-up exams only in extreme circumstances. I decide if a circumstance is "extreme." For example, being in a documented car accident on the way to the exam is likely to count as an extreme circumstance. Circumstances that are not considered to be extreme include losing a cell phone, breaking up with a significant other, forgetting to set/heed an alarm clock, having a cold, etc. Please be aware that missing a midterm exam isn't necessarily a disaster; see below.
I will schedule a midterm when I feel that we've reached a suitable point in the lecture material. Midterms will focus on the material covered in class, in section, and by the programs since the time of the previous midterm (or the start of the term in the case of the first midterm). As new material in this class usually builds upon the old, you should expect that your knowledge of material covered by previous exams will be necessary for success on subsequent exams.
Regrade Requests: After midterm exams are graded, they will be returned to you and you may keep them. We will also review the exam, usually in section. If you feel that your exam was graded improperly, prepare a brief memo that explains which problems concern you and why. Within one week of the date on which the exam was returned to the class/section, submit your exam (not a copy) and the memo to me. I will regrade the entire exam, paying particular attention to the problems you highlighted in the memo. Because errors in grading can cause scores to be too high as well as too low, it is possible that your grade will go down as a result of the regrade. Be sure to review your entire exam before you ask for a regrade.
The final exam will be given at the time stated in the class schedule. (I have also placed it near the beginning of this syllabus. If you see that I have listed the exam time incorrectly, please let me know.) The final will be comprehensive and will have a format similar to that of the midterms. If the final is required and you miss it under less than extreme circumstances, you will receive a score of zero for the final.
At the end of the semester, I will replace your lowest midterm exam score with a percentage-equivalent copy of your final exam score, but only if the final score is higher than at least one of your midterm scores. (Thus, this is a potential bonus but never a penalty.) I do this to reward you for demonstrating an improved mastery of the material over the course of the semester. However, it can also help you if you should miss a midterm because your car broke down, your alarm clock didn't go off, you had a disfiguring zit, or any other non-extreme quirk of fate. Please note that should you miss multiple midterms under sub-extreme circumstances, you will definitely get a zero for those additional missed midterms.
If room capacity permits, leave a seat vacant between you and your neighbor. If need be, we will reseat students before or even during an exam to maintain an honest evaluation environment for all students. Don't be surprised if you see me taking pictures of the class during the exam. That action doesn't necessarily mean that we think that someone is cheating; it also happens to be a convenient way to record attendance.
Miscellaneous Class Policies:
The instructor and the SLs will attempt to reply to email and discussion board postings from students within 24 hours. This means that if you wait until the evening before an assignment is due to send a question to your SL, you may not get a reply before the due date and time. There's a classic sentence that covers this: A failure to plan on your part does not constitute an emergency on our part. We want to help, but like you, we have tasks other than email and discussion board postings that require our attention.
To help your email stand out in our inboxes, please prefix your subject lines with "CSc 127a:", as in "CSc 127a: Why did I lose points when my program is so obviously flawless?" Doing this will help reduce the chance that your email is inadvertently marked as 'spam'.
There will be no opportunities for extra credit points. Use your time to concentrate on doing well on the assigned work. If your grade in this class is important to you, start taking this class seriously now, not just after you do poorly on the first exam. Additional late days for assignments may be offered as incentives under special circumstances.
See Also: | • Accommodation of Religious Observance and Practice: http://deanofstudents.arizona.edu/religiousobservanceandpractice |
All holidays or special events observed by organized religions will be honored for those students who show affiliation with such religions. Absences pre-approved by the UA Dean of Students office will be honored. No matter the reason for missing class, the student is always responsible for the missed material.
See Also: | • Audit Policy: http://catalog.arizona.edu/2014-15/policies/audit.htm |
If you are auditing this class, you may attend lecture and you may attend your assigned weekly section. You can turn in programs and homeworks only if your SL agrees to accept them. You may not take exams.
Miscellaneous University Policies:
See Also: | • Spring 2015 Dates and Deadlines: http://registrar.arizona.edu/dates-and-deadlines/view-dates?field_display_term_value=151 |
If you find yourself thinking about dropping this (or any other) class, first make sure that that's what you really want to do. Chatting with me, your SL, or your academic advisor may help. If you drop within the first four weeks of the semester, there will be no notation on your transcript; it will be as though you'd never enrolled. During the fifth through the eighth weeks, a drop will be recorded on your transcript. You will receive a "WP" (withdrawn passing) only if you were passing the class at the time of your drop. After the eighth week, dropping becomes a challenge, because you need to explain to me and to your dean why you were unable to drop the class during the first half of the semester.
See Also: | • Office of Curriculum and Registration Grading Policy Manual: http://www.registrar.arizona.edu/gradepolicy/incomplete.htm |
• UA General Catalog's Grades and the Grading System: http://catalog.arizona.edu/2014-15/policies/grade.htm |
The university's course catalog contains all of the details about incompletes, but here's the key sentence:
The grade of I may be awarded only at the end of a term, when all but a minor portion of the course work has been satisfactorily completed. |
The phrase "a minor portion" is accepted to mean "20%". To qualify for an incomplete, a student must have maintained a passing grade for the class until the term is nearly complete, and then, due to an unusual and substantiated cause beyond the student's control, the student is unable to complete the class work. In short, you can't get an "I" just because you aren't happy with your grade.
See Also: | • UA Disability Resource Center Student Services: http://drc.arizona.edu/students |
• UA SALT Center: http://www.salt.arizona.edu |
The university and the Disability Resource Center (DRC) have asked all instructors to include the following text in class syllabi:
It is the University's goal that learning experiences be as accessible as possible. If you anticipate or experience physical or academic barriers based on disability, please let me know immediately so that we can discuss options. You are also welcome to contact Disability Resources (520-621-3268) to establish reasonable accommodations. |
Please be aware that the accessible table and chairs in this room should remain available for students who find that standard classroom seating is not usable. |
Additional help is available from the UA Strategic Alternative Learning Techniques (SALT) Center. SALT provides fee-based services for students with various learning disabilities.
Under the guidelines of the Rehabilitation Act of 1973 and the Americans with Disability Act of 1990, students are obligated to notify the school that they need accommodation.
See Also: | • UA Policy on Threatening Behavior by Students: http://policy.web.arizona.edu/threatening-behavior-students |
• UA Policy on Disruptive Behavior in an Instructional Setting: http://policy.arizona.edu/disruptive-behavior-instructional |
The university takes a very dim view of antisocial behaviors in classrooms in particular and on campus in general. If you're so upset that you fear you cannot behave as a civilized person in class, don't come. If you're upset with me or any of the SLs, please talk directly with us, calmly and rationally, about your concerns. In general, treat everyone in class respectfully -- we're all here to learn. Please help me and the SLs foster a relaxed, productive learning environment for us all.
Caveat:
The above schedules, policies, and procedures are subject to change. Whenever possible, changes will be announced to the class before the on-line version of this document is altered.