Richard G Baldwin (512) 223-4758, NRG Room 4238,,

ITSE2317 Java Programming (Intermediate)

This is the main web page for classroom sections and Distance Learning sections taught by Professor Baldwin at

Main Web Page

Spring 2014

Revised 11/02/13


This is the main web page which, in addition to the online Blackboard program, will be used for communicating information between Professor Baldwin and students enrolled in this course.

This document contains important information on many different topics in no particular order.

Read the syllabus
You should read the syllabus for this course before reading further in this document.

Use of the Blackboard online system
The online program named Blackboard will be used for communication with students in those cases where confidentiality is required, (such as the reporting of grades), posting announcements, sending email messages to individual students, and broadcasting email messages to all students enrolled in the course.

The Blackboard Assignment and Test features are the mechanisms that you will use to submit your assignments and to take your tests. (Assignments for the JSP portion of the course will also be submitted using a different mechanism.)

The Blackboard "Send Email" feature is the mechanism that you will use to send Email messages to your instructor.

All students are required to complete the online orientation.  To participate in online orientation, click on the orientation link below. 

Spam blocking software
I receive several hundred email messages every day.  Many of the messages that I receive contain viruses or worms.  Most of the rest are SPAM.

Therefore, whenever you send a new email message to me, you MUST use the Blackboard "Send Email" feature to construct and send the message, and your Subject line MUST contain a brief description of the topic. (Don't simply reply to an earlier email message from me if the topic is different.)

When I see that format, I will trust that the message is safe to open and read. Otherwise, I will assume that your message contains a virus or constitutes SPAM, and I will simply delete your message without reading it.

Questions via Email:
From time to time you may need to ask questions via email, and I encourage you to do so. However, please make the question as specific as possible. For example, "What is OOP?" is not a question that I can easily answer via email.

If you, like many others, procrastinate and save your questions until the day before an assignment or test deadline, don't be surprised if you don't get a response from me until after the deadline has passed.

I am usually happy to answer questions about Java programming concepts at the level of this course. However, please don't ask questions about the assignments (unless you believe there is a problem with one of the test files that I have provided).  It is almost certain that I won't answer them.  It isn't fair for me to answer questions about the assignments from one student when all students don't have an opportunity to hear the question and the answer. After all, if I didn't give take-home assignments, you wouldn't have an opportunity to ask questions anyway. Just pretend that you are completing the assignment in an ACC testing center and that I am not there.

When appropriate, please illustrate your question with a short sample program.  When you send a sample program, please observe several important rules:

I am here to help you, so don't hesitate to ask for help when you need it.

I normally respond to student email messages within 24 hours except on the weekends.  If you send a message to me and you don't receive a response within 24 hours (allow 72 hours on weekends), make certain that your Subject line is correctly formatted and send the message again.

Help me debug my program
Please don't waste our time by asking me to help you debug your programs.  The best way to debug is to avoid errors in the first place.  Then there won't be any bugs that require attention.

If you understand the requisite programming concepts, the only bugs that you will incur will be the result of careless errors on your part.  I won't waste my time showing you how to correct for your own carelessness.

Failure to Meet Prerequisites:
Please don't ask me to teach the ITSE2321 Object-Oriented Programming material to you. If you don't already understand that material, it will be your responsibility to learn it, on your own, without assistance from me.

Carelessness is costly
A few semesters back, on the last Friday of the month, which was anticipated to be one of the most active trading days of the month, programmers working on a network made a careless error and shut the NASDAQ stock exchange down for several hours.  There is no way of estimating how much this cost various people around the world.

A few months later, programmers working for a telephone company made a careless programming error and swamped the 911 emergency call center in Austin with wrong numbers for several hours.  Hopefully no one died as a result, but we will never know.

Although careless errors on assignment programs may not be as costly as the errors described above, they are costly nonetheless.  In fact, the cost for making a careless error on an assignment program is just as costly as not knowing how to write the program in the first place.  In either case, you get no credit for the program.  So, don't be careless.

Who Am I?
I receive many email messages addressed to Dr. Baldwin, and I appreciate the courtesy. My highest degree earned is a Masters Degree in Electrical Engineering, and I am a full Professor at ACC. Under the circumstances, Prof. Baldwin is a more appropriate salutation than Dr. Baldwin.

Please Be Patient
Other than questions regarding registration, please do not send email regarding this course prior to the first day of classes.  If you do, I probably won't answer it.  A great deal of preparation is required to teach a course of this nature.  I have many responsibilities to take care of in the final days before the course begins and I do not have the time to work with individual students until after the course actually begins.  If I reach the point that I can accept email regarding this course prior to the first day of classes, I will post that fact on this bulletin board.

Problems in ACC NRG labs
I have been informed that there is a problem when students attempt to execute Java applications out of the root directory in the ACC labs at NRG.  Apparently if you create a directory and compile and execute your programs out of that directory, the problem will go away.  Laboratory personnel are working on the problem.

Computer Studies Student Information Form
The following is requested by the Computer Studies department, but is not a requirement of the course in which you are enrolled.  Whether or not you provide the following information will not be taken into account when determining your grade in the course.

If you are willing to provide this information, please use the Blackboard Send Email feature to compose a message containing the following information and send it to me.

If you do provide the information, please make the subject line of your e-mail message read as follows: "Student Information Form"

DO NOT include this information in the message that you send confirming that you have completed online orientation.  Send separate messages for those two purposes.

You should be able to copy and paste the following form into your Blackboard e-mail client and then fill in the blanks.  Don't be too concerned about neatness when filling in the form.

Last Name:_____________________
First Name:_____________________
Student ID:_____________________
Course Number: IT__ ____

Telephone Numbers

E-mail address:_________
Any issues that the instructor should be aware of:


Reasons for taking the course:

_____Personal Interest
_____Required by degree program, which is ______________
_____Work related - please explain in comments section below
_____Recommended by ______________________________
_____Other, please explain in comments section below
Please indicate the following:
_____Hours working per week
_____Number of credit hours enrolled in this semester
_____Number of computer courses completed at ACC
_____Highest degree earned
What computer courses have you completed at ACC or elsewhere?


What computer or computer related work experience do you have?




A Special Invitation
Statistics show that the dropout and failure rate in Distance Learning classes is much higher than in classes where students regularly attend lectures, ask questions, and participate in discussions.  It is my strong desire that you succeed in this course and that you do not drop out.

If you are enrolled in the Distance Learning section of the course, I urge and invite you to attend my lectures whenever your schedule will allow.

You can find the schedule for all of my classes at the following URL:

Discussion during office hours
Whether you are a regular classroom student or a Distance Learning student, if you don't understand everything that you need to understand about OOP using Java, you need to be in my office talking to me about it. Often a short explanation will get you past a roadblock and get you back on the track to learning OOP. Visit during office hours, lab periods, or any time that I am in the office.

The Importance of Sun's Java Documentation
I cannot overemphasize the importance of learning how to use Sun's Java documentation for aspiring Java programmers.  I have published a lesson entitled The Importance of Sun's Java Documentation, which you would do well to study.

Warnings in JDK version 1.5 and later
As a result of changes (improvements?) made in JDK1.5, (see my lesson entitled Generics in J2SE 5.0) many existing programs will produce the following warning when recompiled using JDK 1.5 or later versions:

Note: uses unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.

You will learn how to deal with this issue in the Generics portion of this course.

Do not send executable attachments
If you send an email message to me and expect me to read it, DO NOT attach any executable files, even if they are encapsulated in a zip file.  This includes files with the following extensions, just to name a few:


If you do send such files, my virus blocker will simply reject the message and I will never see it.

The following file extensions should be OK:

.zip (Provided the zip file doesn't contain any executable files.)

If you find it necessary to send a questionable file for any reason, you should also send another message without an attachment notifying me that you sent the questionable file as an attachment so that I can be on the lookout for it.

Your official Email address
It is my understanding that all ACC students have been provided an official Email address by ACC, and that address is reflected in all official ACC student records. I have been told that you can cause messages sent to that address to be forwarded to the Email address of your choice. You should make it a point to either forward those messages, or to check your ACC email address on a daily basis.

When I need to send a broadcast message to all students in the course, (and in most other cases as well) I will send that message to your official ACC Email address. If you don't check you mail at that address, you won't get the message.

Also, if I need to send feedback to you regarding problems with an assignment, I will normally send that message to your official ACC Email address.

You may want to use a free Java IDE named DrJava, which is the IDE recommended by the textbook for the prerequisite course (ITSE 2321). It has some very interesting features including the ability to execute Java code interactively.  It can also be run without the requirement for a Windows installation and should run on any platform that has a Java JRE installed.  For example, I am currently running it from a USB memory stick.  If you download it, I recommend that you download the JAR file and run it as a Java application instead of downloading the Windows executable version.  (I was unable to successfully run the Windows executable version under Windows Vista Home Premium Edition.)

See RunningDrJavaAtACC  for instructions for running DrJava in the ACC NRG labs.

Publishing at
I am in the process of publishing much of my online tutorial material in an e-book at Object-Oriented Programming (OOP) with Java. There are no advertisements on that site.

In addition to normal online viewing, you can download all of the modules in a single pdf file in a book format for offline viewing. You can download the modules in html format in a single consolidated zip file. You can also download the modules in different formats that are compatible with mobile devices.

You can also purchase the entire e-book in printed form from this site. (Note that I receive no compensation when you purchase the printed version of the e-book.)

Programming Oldies But Goodies
You will also find many of my tutorials published free of advertisements at Programming Oldies But Goodies.


If things don't seem to be working properly when you follow these links, you may need to clear your cache or force a reload or both.

Bulletin Board

Check this area daily for messages from Professor Baldwin to all students enrolled in the class. Newer messages are posted at the end.

11/02/13 No messages at this time
There are no messages regarding this course on this date.


File: ITSE2317.htm