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:
Section Time Location Section Leader
A Tuesdays, 8:00 - 9:50 a.m. Gould-Simpson 930 Jacob Rochester
B Tuesdays, 10:00 - 11:50 a.m. Gould-Simpson 930 William Grijalva
C Tuesdays, 12:00 - 1:50 p.m. Gould-Simpson 930 Christian Montoya
D Tuesdays, 2:00 - 3:50 p.m. Gould-Simpson 930 Patrick Hickey
E Tuesdays, 4:00 - 5:50 p.m. Gould-Simpson 930 Cindy Trieu
F Tuesdays, 6:00 - 7:50 p.m. Gould-Simpson 930 Jason Steving
H Wednesdays, 8:00 - 9:50 a.m. Gould-Simpson 930 Jason Harris
I Wednesdays, 10:00 - 11:50 a.m. Gould-Simpson 930 Allan Smith
J Wednesdays, 12:00 - 1:50 p.m. Gould-Simpson 930 Cody MacDonald
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:

Miscellaneous Class Policies:

Miscellaneous University Policies:

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.