William M. Pegram
Home | Courses | Web Design | Office Software | Client-Side Scripting | Server-Side Scripting | About Me

Revised: January 14, 2008

Northern Virginia Community College - Annandale Campus

ITP 120 - Java Programming I, Spring 2008 (4 credits)

Section 001: MW 2PM-3:50, Section 002: TTh12-1:50, CT 228
Instructor: Dr. William M. Pegram, wpegram@nvcc.edu, (703)-486-0952 (home)

Web Site for Class: www.billpegram.com (I have password-protected the powerpoints provided by the text publisher; password: ____________________________)
Text: Absolute Java, Third Edition by Walter Savitch, ISBN-10: 0-321-48792-3, ISBN-13: 978-0-321-48782-6

Course Objectives

This course is designed as a programming course with Java as the implementation language. It will stress problem-solving skills and object-oriented design.


The Java software is free and provided on a CD that comes with the text. TextPad is a convenient tool for working with Java and is also available on the CD.

Storage Media

Nothing saved to the c drive will be there after you logoff so you may find it convenient to bring a storage device to class (e.g. floppy disk or flash drive). Alternatively, you can save the file to the c drive and then send an email to yourself with the file as an attachment.


If you miss class, please check the class website for any changes to the schedule, including new assignments.  Being absent from class is not an excuse for not knowing that an assignment was made. When class is cancelled due to inclement weather or instructor absence, assignments will be pushed back to the next class date. You are also welcome to attend class in the other section, subject to capacity constraints..

Office Hour Schedule:

After class. Other times by arrangement.

Required Email Address

I will email you at the email address on my class list which is normally your VCCS email address. If you do not check this address frequently, I would recommend you set it up for automatic forwarding to an email address you do check more frequently. During the first class, I will show you how to specify a forwarding address. Please remember to include your name in all emails to me since I often can't tell who you are from your email address.

Grading Policy:

Your grade will be a function of 2 quizzes (30%), a final (25%) and homework (45%).


In the past, my policy was to accept late assignments but in some cases to penalize them a little. (In fall 2007 in the Java class, there was no penalty at all, partly due to the fact that there was a change in instructors halfway through the semester). In thinking about this policy since the end of the fall semester, I decided that this policy had a number of drawbacks: (1) Instructor grading time was increased becuase grading at one time is more efficient (and equitable) than if this process is spread out over several weeks. (2) I was unable to discuss a completed assignment with the class as a whole in a timely fashion since there were always some who had not yet completed the assignment. (3) For students who did not complete the assignment on time, they were spending time on topics that had been covered earlier in this course, which contributed to them falling further and further behind. (4) People often work best under some sort of deadline and a lax policy on assignments provided little in the way of deadlines. So as a result, my new policy is that I will not accept late assignments, but I will throw out the lowest grade (this should cover missed assignments due to illness, deaths of relatives, etc.). Exactly what I mean by late will be made clear as we go through the semester.

Academic Integrity

In general, students are expected to follow the Information Technology Student/Policy Ethics Agreement as posted in computer areas and academic integrity standards as set down in the Student Handbook.

Students are encouraged to help each other out. However, on work that is graded, there are restrictions on helping other students: On homework assignments and projects, students may ask for and receive some assistance from others, unless otherwise directed by the instructor.  Yet those helping a student should avoid "doing the work" for the student.  No assistance is permitted on exams and quizzes.

Students should resist any temptation to simply use code that was written by another for several reasons. Most important of all, this course is designed to be a first course in programming with the idea that most will go on to additional programming courses at a later time. Therefore now is the time to develop the self-reliant skills that will contribute to success in these later courses and for some of you, in jobs. If you copy code now, you are just setting yourself up to fail later on.

Dropping and Withdrawal from the Class:

Thursday, January 31st is the last day to drop the class and get a tuition refunds (use NovaConnect).   Monday, March 31st is the last day to withdraw or to change to audit. Practically all of the people who get an F as a final grade from me are those that stopped coming to class and doing the work but didn't withdraw by this second deadline, even sometimes after email and telephone reminders.

Learning Environment

NVCC is a place for learning and growing.  You should feel safe and comfortable anywhere on this campus.  In order to meet this objective, you should: a) let your instructor, his/her supervisor, the Dean of Students or Provost know if any unsafe, unwelcome or uncomfortable situation arises that interferes with the learning process; (b) inform the instructor within the first two weeks of classes if you have special needs or a disability that may affect your performance in this course.

Fire/Emergency Evacuation Procedures

Students should familiarize themselves with both the primary and secondary routes that are to be used, in case you need to evacuate the building, as well as other evacuation procedures to be followed.