Challenges in Java Education

By Sherry Shavor
Development and Education, IBM



Introduction

Java is an exciting, dynamic technology that is challenging to teach. With emerging specifications, new classes, and general updates to the JDK, one must accept the following fact when teaching Java: The course will be in a constant state of change because the subject matter is in a constant state of change. In the past, programming classes were created using the model of "develop the course and then teach." The teaching cycle was typically much longer than the course development cycle. In today's technological environment, curriculum development must be iterative. In order to be Java-compliant, we must follow Sun specifications, which are continually changing. As a result, our VisualAge products are also continually changing. In the past, products were released every year and new versions were presented as "upwardly compatible." Today, new releases of host-based products are issued every few months, so class material will probably need to be updated each time.

The following is a brief account of how we developed a new instruction paradigm for teaching our VisualAge for Java course. Our development method included restructuring the curriculum for students with diverse skills and adapting presentation tools to suit the course materials and labs.

Handling a Variety of Skills and Interests

When developing the VisualAge for Java course, we had to take into account the diverse skills and interests of students. Students in the VisualAge for Java class fell into the following categories:
  • OO novice (Java is their introduction to OO)
  • Java expert
  • Smalltalk expert, just starting Java
  • C++ expert, just starting Java
  • New to Visual programming with VisualAge
  • Visual programming expert with VisualAge
Challenge labs were developed for the advanced students. These labs allow students at all levels to find a comfortable path through the class. This approach was used successfully in the VisualAge C++ class as well.

Many students are also interested in learning about Java in the industry, and there are many questions about IBM, Microsoft, Sun, and Netscape. Since Java is also used for building Web applications, there are questions about how to package an applet for delivery over the Internet and how to build a good Web application. Instructors found it difficult to keep up with the latest Java news (through journals, magazines, news groups, or new textbooks) and incorporate all new developments into a short session.

Changing the Presentation Style

Teaching such a continually developing technology called for a different type of class presentation. We use Lotus SmartSuite Freelance to present lecture and lab materials instead of using a host-based tool. The SmartSuite tools are very easy to use, and they allow for speedy development of high-quality material (clip art, color images, etc.). The students are given copies of the instructor's class notes so that they don't have to worry about copying material from a crowded overhead slide. All labs use VisualAge for Java (the tool we're teaching) and all demos involve the use of Java.

We adopted the concepts of object-oriented programming in our course design. Each new freelance file corresponds to a new chapter or topic, and dependencies between chapters and between labs are kept to a minimum. Transitional statements at the end of each slide were deleted because they are costly and of little value. Deleting these transitional elements and creating self-contained modules (just like creating objects or reusable components in programming) means that topics can be written independently and rearranged or altered with minimal impact to the other sections of the course.

Demos are used because a single demo can replace many screen captures. Screen captures are useful but require too much maintenance. If a simple icon changes, the whole screen capture has to be redone. Lotus SmartSuite tools make the few necessary screen captures easy to create with a simple cut-and-paste procedure (instead of the old method of transferring data from the PC to the host and running conversion utilities, which is time-consuming and costly).

An FTP site was created for the course so that material can be shared and updated worldwide.

Future Plans

We intend to use the same process for the next class we develop: "Bringing Your Business to the Internet with VisualAge for e-business." Though we have no way of knowing what changes and improvements in Java lie ahead, we can plan for change.





JavaTM is a trademark of Sun Microsystems, Inc.

VisualAge is a registered trademark of the IBM Corporation.

Freelance and SmartSuite are trademarks of Lotus Development Corporation.

Other companies, products, and service names may be trademarks or service marks of others.

Copyright    Trademark



  Java Feature Java Education Java Home  
IBM HomeOrderEmployment