CSIS-120 Introduction to Programming
Spring, 2008
![]()
|
Instructor: |
Dr. Mary Anne Egan 319 Roger Bacon 782-6546 maegan@siena.edu |
|
Office Hours: |
Monday 11:30-12:30,
2:00-3:00 Tuesday 11:30-12:30 Thursday 11:30-12:30 Friday 11:30-12:30 |
|
Lecture Sections: |
Monday/Friday 10:25 – 11:20 |
|
Lab Sections: |
Tuesday 1:00 – 3:00 Wednesday 9:20 – 11:20 |
Course Materials:
Text: Objects
First with Java: A Practical
Introduction using BlueJ by Barnes and Kölling
Hardware: Pentium
III workstations, Alpha server
Course Goals:
·
To enhance
the student’s problem-solving abilities
·
To develop
the student’s ability to develop programming solutions
·
To enable
the student to translate algorithmic solutions to a Java implementation
·
To help the
student acquire knowledge about computing systems in general
·
To continue
the student’s introduction to the academic discipline of Computer Science
Even if your career takes you in a direction that
doesn’t require computer programming, the organization and problem-solving
skills that you learn in this course can be applied in many different
situations. By learning to program a
computer, which requires very precise instructions, you can hone your
problem-solving skills to a much higher degree.
Policies:
Attendance: Do not miss class. You are responsible for all announcements and
material covered in class, whether or not you are physically present. It is your
responsibility to obtain handouts, notes, and materials for any classes you
may have missed.
Do
not miss an exam; make-up exams will not
be given unless there is a valid advance reason for missing an exam, i.e.
scheduled sports event (intramural events do not count), class trip, etc. Arrangements must be made in advance by contacting me at least
two weeks before the scheduled exam date to arrange an alternative time.
Attendance
Bonus: While I do not penalize students for absences
(you do that yourself by missing information taught during class), I do offer
an incentive to attend class. If you
have perfect attendance for the whole semester, I will “bump” your grade up to
the next grade. For example, if you end
the semester with a C+ and have perfect attendance, you will receive a B- as a
final grade.
An
absence is defined as any time you are not in class, whether the absence is
excused or unexcused. The only case
where I will not bump your grade for
perfect attendance is when you end the semester with an F.
Academic
Honesty: While partnerships are
encouraged in the Laboratory segments, you must
do your own work on programming projects.
Academic dishonesty includes cheating on an exam, handing in a project
not entirely your own work, or turning in a lab not entirely done by the
partners. The penalty for academic
dishonesty is a final grade of F for the course. I reserve the right to examine any files or
directories in your course account at any time.
I
am available if you should run into difficulty in working on your projects or
labs, whether it is in general algorithm development or in syntax
problems. You should be aware that a
visit during office hours is considered to be evidence that you care about your
work, and that you care about your progress in the course. You should take advantage of this help,
especially for lab work.
Lab
Work: While you may develop your
programs on another system, you must have a copy in your course account that
runs under Blue J’s version of Java to receive credit. You may work on labs with a partner, but each
member of the team must have a copy of the programs in his/her own
directory. You may not collaborate with others outside your lab partnership.
Project
Work: While you may develop your
projects on another system, you must have a copy in your course account that
runs under Blue J’s version of Java.
Plagiarism, for project work, consists of receiving help from anyone other than the instructors for
this course; if you have been given help from anyone (including the tutor), you
must document (comment) this help in your program.
Hats: It is common
etiquette that men do not wear any type of hat inside. You will not be allowed
in my classroom if you are wearing a hat.
For the sake of fairness, not etiquette, this policy will also hold for
women.
Cell
Phones:

Assessment:
Your grade for this course will be based upon your lab
work, project work, and performance on exams.
The following weights will be used to determine grades:
Labs 20%
Projects 30%
Quizzes 10%
Exam 2 10%
Final Exam 20%
To
earn a grade of C- or better in this course, you must have an average of C- or
better on the examinations and projects, regardless of performance on labs.
Exams: All exams
will be closed-book and cumulative, although the second exam will stress
material covered after the first exam.
In each exam, you will be permitted to bring in one sheet of paper (8.5”
by 11”) with anything you like written on it
|
Grade |
Approx. Numeric Equivalent |
Description |
|
A |
89-100 |
A student earning this grade
must demonstrate not only mastery of course material, but also originality or
creativity that is appropriate to the problem solving nature of this course. |
|
B |
79-88 |
Mastery described above has a
hole here and there |
|
C |
69-78 |
Student lacks an understanding
of some of the material presented in class and worked with in the lab |
|
D |
59-68 |
Serious deficiencies in
several areas that were covered in the course |
|
F |
<59 |
Deficiencies span the better
part of the course |
In this introductory course, we
will attempt to balance the need to “cover” a certain amount of material with
the approach of providing enough time for us to work as computer
scientists. So, while a list of topics
and dates is provided, you should be aware that it is only a tentative plan for
the semester.
Week beginning
|
Lecture
|
Lab |
Textbook |
|
|
|
|
|
|
|
1/21 |
Intro
|
No lab |
Chapter
1 |
|
1/28 |
Objects and classes |
Lab
0 |
Chapter
1 |
|
2/4 |
Class definitions
|
Lab
1 |
Chapter
2 |
|
2/11 |
Object interaction |
Lab
2 |
3.1
– 3.10 |
|
2/18 |
Methods/Debugger
|
No lab |
3.11
– 3.15 |
|
2/25 |
Methods/Debugger |
Lab
3 |
3.11
– 3.15 |
|
3/3 |
ArrayLists
|
Lab
4 |
4.1
– 4.7 |
|
3/10 |
Loops
|
Lab
5 |
4.8
– 4.9 |
|
3/17 |
No Classes |
No lab |
|
|
3/24 |
Arrays |
No lab |
4.10
– 4.12 |
|
3/31 |
Arrays |
Lab 6 |
|
|
4/7 |
Javadoc |
Lab
7 |
5.1
– 5.4 |
|
4/14 |
Sets |
No lab |
5.5
– 5.9 |
|
4/21 |
Public vs. private |
Lab 8 |
5.10
–5.14 |
|
4/28
|
Well-behaved objects
|
Lab
9 |
Chapter
6 |
|
5/5 |
Wrapup |
No lab |
|
Tentative Evening Exams (7-9PM):
Monday, February 25
Tuesday, April 1