CSC
125: INTRO TO COMPUTER SCIENCE
Fall Semester 2012
T-TH 10:30 – 12:10 (IVERS 222-222)
T-TH 12:50 – 2:30 (IVERS 221-222)
Instructor: Daniel Thureen, IVERS 234L, Phone: 299-3376 E-Mail: thureen@cord.edu Homepage: www.cord.edu/faculty/thureen Office Hours: 1:20 – 2:30 PM MWF
Other times by appointment or discovery Textbook: JAVA For Everyone by Cay Horstmann, Wiley 2013
Tutor: Stephanie Schilz
PRIMARY COURSE OBJECTIVES, to learn:
1. General
knowledge about computing and information technology.
2. Develop strong problem solving skills.
3. Basic
programming and software development skills.
4. Familiarity
with the Java programming language
5. Preparation
for continuing on to higher level computer science courses.
Learner
outcomes:
1. Ability
to program in Java using classes, objects and methods.
2. Ability
to convert flowcharts to and from Java code.
3. Ability
to identify and discuss the principle components of a computer system.
4. Ability
to read & write code documentation using the Javadoc
format.
The class instruction will be a
blend of dialog based lecture and hands on programming examples conducted in a
computer lab setting.
Assignments:
·
Assignments will consist of
primarily of programming exercises & problems in the Java programming
language as a means to both learn Java and develop logic based problem solving
skills. Programming problems will be graded based on program correctness,
efficiency, clarity and documentation. Generally speaking, it is expected that
programming problems will compose the great majority of homework assignments in
terms of weight.
·
It is
expected that all work done for this class will be your own work. Sharing of
ideas is encouraged, and a certain amount of collaboration is encouraged, but
simply copying problem solutions or programs is a form of plagiarism and will
result in a zero for that assignment and possible disciplinary action by the
college.
·
ALL assignments
are due at the BEGINNING of the class period on the Due Date indicated for the
assignment. In order to allow a bit of flexibility in scheduling, each student
will be given 10 days of "free grace" for completing assignments. These grace days may be applied to the
assignments as desired. After all the
grace days are used up, any late work will be penalized 10% for each day
late. All grace expires and all
assignments must be turned in by the final day of class. Plan ahead - finish early! Even
experienced programs are prone to grossly underestimating the amount of time
required to complete a project. Set aside ample time to document, code, test
and debug your programs. If you need help get it early. The longer you wait to
get help with the material, the harder it will be to get back on track.
·
The best way to learn programming is
to write programs. You are encouraged to work on additional exercises and
personal projects. Strong problem solving skills are useful in many
disciplines, including computer science. When working on problems don’t just
focus solely on the solution, actively think about your problem solving process
as well. Good software depends on more than code - clear documentation and
design is equally important; both will be factored into the grading of
programming assignments.
·
Pen and paper exercises will be used
in conjunction with the computer literacy portion of the course. These
exercises will be graded based on correctness & clarity of communication.
·
Short quizzes may be periodically
given which will be treated as assignments for grading purposes. Only a small
percentage of homework will be drawn from such exercises.
Attendance
& Participation:
You are expected to both attend
class and participate in course activities and discussions. More than 2
unexcused absences will lower your grade. All absences will be considered
unexcused unless prior instructor approval is given. If you have a scheduled
absence due to extracurricular activities, it is your responsibility to provide
prior notice. Later topics are
highly dependent on early material. Falling behind early on will make learning
subsequent material significantly more difficult. It is nearly impossible to understand more
advanced topics if you have missed the preceding material. If a student must
miss any class, it is his/her responsibility to get the missed materials and
announcements from a classmate.
Exams:
Exams will draw from assignments,
the texts and lecture materials. Exams will be of a pencil & paper format. Unless
stated otherwise, all exams are closed book, closed note format. There will be
four exams with the fourth exam given during the normal final exam time slot.
Since later materials depend on earlier materials, all exams are
semi-comprehensive; however the emphasis will be on materials covered since the
last exam. Makeup exams will be allowed at the instructor’s discretion.
Typically, makeup exams will be allowed for situations arranged with the
instructor prior to the exam. While not strictly required, a doctor’s statement
is preferred for verifying absence due to illness or injury. Generally
speaking, makeup exams must be scheduled within one week of the issued exam.
Makeup exams are generally slightly more difficult than the original exams.
Grading:
Exams (4): 100 pts each = 400 pts Assignments(9-12): 20 pts each = 200 pts Miscellaneous (Attendance, participation, attitude, etc.) = 100 pts ------------- Total 700 pts Tentative Schedule I. Chapter 1 - Introduction Chapter 2 - Fundamental Data Types Chapter 3 - Decisions Exam 1 – Thursday, Sept 20 II. Chapter 4 - Loops Chapter 5 - Methods Chapter 6 - Arrays & Array Lists Exam 2 – Thursday, Oct 18 III. Chapter 7 - Input/Output & Exception Handling Chapter 8 - Objects & Classes Chapter 9 - Inheritance & Interfaces Exam 3 - Tuesday, Nov 20 IV. Basic Computer Technology & literacy· Processors & processing
· Memory
· Secondary Storage
· Input/Output
· System Software
Final Exam 4 - 10:30 section - Wednesday, Dec 12, 11 AM 12:50 section - Friday, Dec 14, 11 AM