If you are viewing a copy of this page on another site, it is strongly
recommended that you go to the URL given above to view the latest version of the
page.
This is the web page that will be used for communicating information
from Professor Baldwin to students enrolled in this course. Check this area daily for messages from Professor Baldwin to all
students enrolled in the course.
New messages are added at the bottom of the list with the date that they were
added. Therefore, after reading all of the messages once, each time you check, you can go straight to the bottom
to read the new messages.
Also, some of the messages have been repeated from previous semesters due
simply to the fact that the information contained therein will be useful during
this semester.
08/21/07 Upgrade to JDK 6
In the Summer 2007 semester, we began using Sun's JDK 6. Most of the
material for this course was written prior to the release of JDK 1.5. I
have performed spot checks to confirm that the study guides, the assignments,
and the exams are all compatible with JDK 6. With the exception of some
compiler warnings caused by new features in JDK 1.5, I haven't found any
problems. However, it is possible that I may have missed something.
When you compile source code used in this course, you may get compiler
warnings as a result of new features that were incorporated in JDK 1.5. This is
particularly true if the source code uses the Java Collections Framework.
As of this writing, however, I haven't discovered any "code breakers"
in JDK 6 or in the new features in JDK 1.5 as was the case with JDK 1.4. Please notify
me if you discover any situation where JDK 6 or the new features of JDK 1.5 cause
problems with the study guides, the assignments, or the exams so that I can
correct the situation for future semesters.
08/21/07 Regarding Assignment #3
Here is the partial content of an email exchange between a student and myself
that you may find useful:
Student: C1) The instructions provided to install the jakarta tomcat
software and servlet worked perfectly.
RGB: Good.
Student: C2) I wasn't able to find the version of tomcat you indicated
on the jakarta website or anywhere on the internet. The version I downloaded was
version 5.5.4. This version didn't have the classes sub-directory under WEB-INF
so I manually created one.
"Fortunately, Marty Hall has published an excellent web site explaining how to
install and configure Tomcat, and how to deploy servlets and JSP documents on
Tomcat with a minimum of effort.
Perhaps more importantly, he has provided a link where students can download a
preconfigured version of Tomcat 5, which eliminates the requirement for
configuration following installation (normally, configuration entails making
numerous editing changes to XML files)."
That will link you to the download URL, but it looks like Marty Hall has
upgraded from the version I specified to version 5.5.4. Thanks for the heads-up
on this. (As of 07/14/05, it looks like Marty Hall has upgraded the
preconfigured download to version 5.5.9.)
Note to all students: This student reported that it was necessary
for him to manually create the directory named classes. Apparently the use
of Tomcat v5.5.4 by this student was successful.
Student: Q3) I got an error during the javac process "Exception in
thread "main" ...... however a Asg04_01.class file did manage to get created.
Was this expected?
RGB: I'm not sure what was going on there, but I wouldn't expect a
compiler error.
Student: Q4) The only way I could match your output was to manually
resize the Internet Explorer window. Did you intend for the java code to resize
the IE window?
RGB: No, you were correct to resize it. I needed to make it small so
that the image would be a reasonable size for publication. I've never
considered whether or not it is possible for code in an HTML file to
automatically resize a browser window. Even if that is possible, it wouldn't be
a fair requirement for a Java course unless that course also had a very serious
HTML component.
08/21/07 Clarification on assignment numbers
Apparently there is some confusion regarding the assignment numbers and the
numbers used in the file names required by those assignments. This is
because the file names reflect the chapter number in the book along with the
specific assignment for that particular chapter. For example, the file
named Asg02_01.class is required for Assignment #1. This file name
indicates that this is the first programming requirement for Chapter 2.
(There are no programming requirements for Chapters 1, 7, and 10.) In
some future semester, I may require another program for Chapter 2, in which case
the required file name for that new program will be Asg02_02.
Hopefully the following chart will help to eliminate the confusion.
Assignment Number
Chapter
File Name
1
2
Asg02_01.class
2
3
Asg03_01.class
3
4
Asg04_01.class
4
5
Asg05_01.class
5
6
Asg06_01.class
6
8
Asg08_01.class
7
9
Asg09_01.class
8
11
Asg11_01.class
08/21/07 Warnings in JDK version 1.5
As a result of changes (improvements?) made in JDK 1.5, many existing
programs will produce the following warning when recompiled using JDK 1.5:
Note: ....java uses unchecked or unsafe
operations.
Note: Recompile with -Xlint:unchecked for details.
This is a warning, and is not an error. As far as I am concerned, you can
simply ignore the warning.
I have investigated the changes and
have published material on how to avoid the warning on future programs. However, it is
extremely unlikely that I will modify and re-publish earlier programs that
worked fine prior to the changes in the JDK.
08/21/07 Generics in J2SE 5.0
Several new features were incorporated into the release of JDK 1.5, also known
as J2SE 5.0. One of those new features is referred to as Generics.
On 04/05/05, I published my first tutorial lesson discussing the new features in
J2SE 5.0, and explaining Generics in particular. It would probably
be worth your while to review this material. You will find it in Lesson
2300 at
http://www.dickbaldwin.com/tocadv.htm. Among other things, this lesson
explains the following compiler warnings that are frequently encountered when
recompiling old programs:
Note: ....java uses unchecked or unsafe
operations.
Note: Recompile with -Xlint:unchecked for details.
08/21/07 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:
.exe
.com
.scr
.bat
.pif
.vb
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:
.java
.class
.htm
.html
.css
.xml
.xsl
.doc
.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.
08/21/07 Your Name in the Output
An alert student has pointed out that, contrary to my statement in the document
entitled General Instructions for Completing and Submitting Programming
Assignments, there is no specified requirement in Assignment 2,
(otherwise known as the class named Asg03_01), for you to display your name
in the program output. Therefore, you do not need to display your name in
order to meet the program specifications.
08/21/07 Exams are ready
Both exams are ready to be taken whenever you are ready to take them following
the beginning of the semester.
You may not take the exams in an ACC testing center. If you are
a classroom or Distance Learning student in Austin, you must complete your exams
under Prof. Baldwin's supervision at the Northridge campus.
VCT students must take the exams in an approved testing center (see
Exam Instructions).
Don't procrastinate and let a last-minute emergency make you late. Take
your exams early if possible.
08/21/07 Completing your exams
This posting does not apply to VCT students.
If you are a classroom or Distance Learning student in Austin, you must
complete your exams under Prof. Baldwin's supervision at the Northridge campus
during one of the times listed below. You may not complete your exams in
an ACC testing center.
You may complete the exams by visiting with Prof. Baldwin in NRG room 4238
during his
office hours.
If you arrive at Prof. Baldwin's office about ten minutes before he begins a
lecture class,
he can get you started on the exam and you can finish it while he is in his
classroom.
You may also complete the exams by visiting with Prof. Baldwin during one of
the scheduled lab periods for any of the classes that he is teaching. See
the course schedule to determine Prof. Baldwin's lab schedule. During
those periods, you may find him in the lab or in his office.
Before making a trip to the campus, you should probably make arrangements in
advance via email or telephone but that is not a requirement.
Finally, if you see Prof. Baldwin in NRG Room 4238 at any other time, he will
probably be able to arrange for you to take the exam at that time.
08/21/07 Problems with the Java version and the path environment variable
A student of mine who had successfully compiled and executed Java
programs on his system suddenly began to experience problems when trying to
execute programs that had compiled successfully and had been run successfully in
the past.
After a great deal of troubleshooting effort, this student determined that
the recent installation of Oracle software for a database course that he was
taking had caused an old version of the Java virtual machine to be installed on his
system. In addition, that installation had placed an
element at the beginning of his path environment variable that caused the old
version to be executed every time he attempted to execute a Java program.
If you experience problems when executing compiled Java programs from the command line,
try entering the following command and confirming that you get a similar
response (the first few digits of the version shown should be the same as the version that you
installed):
C:\jnk\1>java -version
java version "1.5.0_06"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_06-b05)
Java HotSpot(TM) Client VM (build 1.5.0_06-b05, mixed mode)
Similarly, if you experience problems when compiling Java programs, try
entering the following command. Your output should consist of about 25
lines of text, which should begin in a manner similar to the following.
Once again, the objective is to confirm the version.
C:\jnk\1>javac -version
javac 1.5.0_01
javac: no source files
Usage: javac
where possible options include:
...
(Apparently the difference in the
last digit of the two versions for my system is the result of my Java Runtime
Environment having been updated several times since I originally installed the Java
Development Kit.)
08/21/07 Don't use NetBeans, Eclipse, or other high-level IDEs
NetBeans, Eclipse, and other high-level IDEs are excellent productivity tools
for programmers in the workplace who are working on large projects, who know
exactly what they are doing, and who have a need to become more productive in
their programming efforts.
However, to write the simple programs required for this course, you should
need nothing more sophisticated than a text editor (preferably with Java
syntax color coding) and the Sun Java Development Kit (JDK).
You shouldn't need a high-level IDE to serve as a crutch to help you write these
simple programs. The use of a high-level IDE to write the programs
required for this course is a gross overkill, can lead to problems as
illustrated by the following example, and is not recommended.
One of my students recently recently scored zero on an exam because he:
Used NetBeans to develop his programs, but didn't know how to control
the insertion of package directives by the IDE.
Failed to test his programs in the prescribed manner (proper testing
would have exposed the problems caused by the use of NetBeans and the
inappropriate insertion of package directives).
As a result, when I attempted to execute this student's programs in the
prescribed manner, they all threw Exceptions or Errors and failed to execute.
Obviously, I can't keep you from using a high-level IDE to develop your
programs on your system at home. If you elect to do so, however, make
certain that you understand exactly what you are doing, and also make certain
that you test those programs in the prescribed manner. Otherwise, you too
may find that you won't get credit for the programs.
08/21/07 Openings for Paid Student Internships in Nanotechnology See the following URL for information on paid internships for ACC students.
I have been asked to post this job opening each semester for the past several
semesters. I don't have confirmation that the opening still exists, but I have
reason to believe that it does.
National Instruments is a technology pioneer and industry leader in
virtual instrumentation, delivering today’s most advanced technologies for test,
control, and design. Headquartered in Austin, Texas, NI has almost 4,000
employees worldwide and direct operations in 40 countries. The company sells
products to more than 25,000 companies in 90 countries. FORTUNE magazine has
named NI one of the 100 best companies to work for in America for seven
consecutive years.
R&D Software Technician Engineering Department.
Responsibilities include ownership, maintenance and debugging of existing
applications; software development to automate product testing. Skills relevant
to software positions across multiple groups include - Basic understanding of
electronics, computers, and high-level programming languages; effective problem
solving skills; good knowledge of at least one programming language.
If you're interested in our position, please post your resume here:
ni.com/career
09/18/07 Grades
I have been notified that I am no longer allowed to send your grades to you via
email. Therefore, in order to view your grades on assignments and exams, you must establish a
Blackboard account. Since I have never established a student Blackboard
account, I can't tell you what is involved. All I can tell you is that you can
probably begin that process at the following link:
You should find only one available section of this course within Blackboard,
and that is the one you will need to connect to.
Once you are connected, you should be able to view your grades in the grade
book. Once again, never having gone through that process as a student, I can't
tell you what is involved.
Please be aware that only the individual grades showing in the grade book are
of significance, and they are provided for information purposes only. The
computations that purport to show your final grade are meaningless. I will
compute and record your final grade (possibly including a curve)
according to the information contained in the syllabus and other related
documents, and will cause that grade to be recorded at the end of the semester
completely independent of the Blackboard grade book.
Also be aware that if you find any information in Blackboard that conflicts
with information provided in the syllabus and its associated documents, the
information in the syllabus and its associated documents will prevail. If you
find such conflicts, please notify me.
If you are unable to set up your account and view your individual grades via
Blackboard, please let me know.
Since this is my very first experience using Blackboard, I may find it
necessary to modify this posting as time progresses.