Java Applets in Education
You are here: irt.org | Articles | Java | Java Applets in Education [ previous next ]
Published on: Sunday 7th March 1999 By: Pankaj Kamthan
The last few years have seen a rapid emergence and broad
acceptance of the WWW as a global medium for disseminating and processing information that
is accessible in multiple formats (multimedia) and at extremely fast speeds (hypermedia).
This has opened new vistas in education by taking full advantage of our basic
"senses" of learning such as visualizing 3D objects and nonlinear nature of
thought processes. Recent years have also seen the inception and
development of Java, a powerful
programming language from SUN Microsystems.
This article discusses the interplay of these two
technologies - Java and the WWW - in context of education. In that effort, we address the
following questions from a pedagogical viewpoint:
How can the present computational
environment of Java and the WWW be integrated in education? In particular, how and where
can Java applets be used? What issues should be considered before and during such a use?
We assumes that the user is familiar, at least at an
elementary level, with the notion of Java applets. This article is by no means an
introduction to Java; there are many good tutorials and books available for that purpose.
What are Java Applets?
Among the different types of programs that can be written
in Java, we are primarily interested in applets. Java applets are programs
written in Java that require a WWW browser or another Java application to run. (A Java
application is a standalone program that requires the assistance of the Java interpreter,
such as the Java Virtual Machine (JVM), to run.)
Advantages of Java as a programming language
It is said that a language is only as good as the
applications that can be written in it. Java scales well to this measure, as is evident by
its numerous applications, including those which are educational. We will introduce some
of these later.
Advantages of Java are reflected in its definition:
A simple, object-oriented,
distributed, interpreted, robust, secure, architectural neutral, portable,
high-performance, multithreaded, and dynamic language.
These features have made Java a favourable language for
programming on the WWW.
There are various specific advantages of using Java applets
over existing programming environments:
- Speed. Java applets are accessible on the
client-side, hence are faster than programs running on remote servers.
- Interoperability. Java applets can interface with
various forms of media formats (text, graphics, animation and sound)
with other applets, with programs on its host server and with HTML/XML
documents on remote servers.
- User Interaction. Unlike Java, HTML is equipped
with a limited set of graphical user interface (GUI) elements. Java
applets can thus provide a better user interaction.
- Platform Independence and Portability.
Multi-platform versions of educational software are scarce, and often
have a strong dependency on the underlying hardware. On the other
hand, users can access a Java applet using different types of
architectures and Java-compliant browsers, but still all see the same
information in nearly the same format.
- Distributed and Network Computing. Until
recently, results from one application usually could not be shared by
remote users in real-time. Java Application Programming Interface
(API) has support for writing distributed and network programs which
can access and share data residing at remote repositories, thus
supporting data reusability.
- Development and Maintenance. Usually, the process
of writing an educational program is:
main program (which does the computations) + graphics (which plots
the results) + user interface,
each of them often in different languages. This can be difficult to
extend and maintain. With the support of Java API, these three
components can be integrated into one unified environment.
Limitations of current educational practices and advantages of Java Applets
There are various inherent limitations in the current
practices of teaching and learning. Some of these problems can be solved to a large extent
via integration of Java applets. These aspects can be outlined as follows:
- Open Classroom. The use of Java applets can
encourage asynchronous distance learning and thus help overcome the
limitations (involving both time and space) inherent in traditional
instructional techniques. (Instruction is asynchronous when it does
not constrain the student to involvement in the learning process at a
specific time, for example, when lectures are presented at a
fixed time of the day. Instruction is distant when it does
not constrain the student to be physically present in a specific
location, for example, when lectures are presented only in a
fixed classroom.) Using the WWW, teachers and students can
access information any time and anywhere. In the
present educational system, teaching hours (including the
instructor's office hours) are often insufficient for students. Now
that many students have access to the WWW, such facility can be very
timely and convenient for students who wish to study the course
material from home in their own time. The need for physical proximity
can thereby be reduced.
- Nature of Information. There are various concepts
and phenomena that inherently involve:
- Dynamic information. For example, chemical reaction simulation or
rate of convergence of a numerical method of integration or motion of
- Multimedia information. For example, any subjects that involve the
study of concepts from graphics, animation or sound.
- Interactive information. For example, any topic that involves
change of system parameters for understanding.
Such information can usually not be represented, distributed and
communicated in paper form (and even using a blackboard or
overhead-projector with transparencies) due to various
limitations. Even though animations can be created using other
techniques (for example, GIF animation tool), they lack
interaction. The "mental picture" that a teacher has is
better conveyed to a learner if the information is presented in its
Java applets can complement a lecture and sessions with such
information which is difficult to convey in traditional manner. The
use of applets along with desirable multimedia support, provides a
representation that is often better in communicating a concept than a
static figure(s) or a written description. It also helps learners
visualize the concept relatively easily. Through the multimedia
support of the WWW, information can be represented dynamically and
interactively - both of which Java applets are well equipped
with. Applets that have active GUI elements give control in the hands
of the learner, and thus allow the learner to gain experience with the
- Classroom Demonstrations and Connections.
Classroom demonstrations are an essential component of subjects that
are practically-oriented. In various such courses, for example, which
are computationally oriented, actual computer implementations of
algorithms that function in real-time are usually not introduced in
the classroom. Also, the classroom and laboratory components are
separated - the lessons are carried out in the classroom
while the implementation of algorithms corresponding to them is
carried out in a computer laboratory.
- Teacher's Viewpoint. The teacher, at best, illustrates a
static computer program for an algorithm or a static
image of a computer-generated graphical result. This is often not
sufficient. Using Java applets, teachers can perform classroom
demonstrations involving real-time computations, bringing more realism
to the subject matter. They can thus save time in explaining
the algorithmic implementations. The use of hypertext in a WWW
document also facilitates explanation of related concepts (such as an
applet performing a computation and a corresponding lesson). This can
bring clarity and continuity to the lecture by immediate
referencing and not referring back-and-forth to, for example,
transparencies. During individual study, use of hypertext helps
students to recall concepts already learnt and access prerequisites
for a topic, in a natural manner not possible in a plain text environment.
- Learner's Viewpoint. It is difficult for students to understand
the basic concepts involved in the algorithms (for example,
how the approximation to the area under a curve
changes as one increases the number of partition intervals)
unless they see them in action. Java applets combine these
classroom and laboratory components, and provide an environment where
students can "see" the connections by immediately
applying the concepts they have been taught. This also gives students
an opportunity to make their own conjectures and experiment with them.
This can lead to a better understanding on part of students.
- Assessment. Traditional methods of assessment
such as in-class quizzes can be replaced and/or supplemented with
simple Java applets-based multiple-choice on-line tests. This can
increase the range of questions that can be asked, as now one is not
restricted to the paper format. Such tests can give learners a measure
of their understanding of the subject and thus develop confidence. It
is also possible to make some of these examinations openly available
so that the learner can carry them out in their own time.
- Cost. Commercial application packages and
compilers which are used in teaching courses are not readily
affordable by all students for personal use. On the other hand,
Java-compliant WWW browsers such as Netscape Communicator or Microsoft
Internet Explorer are available free of cost for academic use. Java
compilers and run-time environments are also freely available for
- Transferability and Adaptability. The results of
development of Java applets in one instance can be transferable and
adaptable to various other learning situations. Java applets, when
used in a classroom, can bring a stronger integration between (already
existing) theoretical and practical aspects of the subject. There are
various courses whose syllabi often intersect (for example, Geometry
and Computer Graphics; Numerical Analysis and Calculus/Linear
Algebra). Java applets (or even individual Java source/class files)
developed for one course could be (re)used by teacher and learners in
In theory, there is no
difference between theory and practice. But, in practice, there is.
- Jan L. A. van de
There are various technological and pedagogical issues that
should be considered before making the decision of using Java applets for educational
There are various pedagogical considerations and questions
that need to be asked when considering the use of Java applets for educational purposes.
The following are some issues and suggestions:
- Appropriateness. One of the most important
questions is: Where is the use of Java applets most appropriate,
and why? Java applets can be based on carefully chosen topics
from the syllabus of a course. It is not necessary that all topics
automatically lend themselves to illustration by a Java applet; in
many cases, traditional methods (such as a blackboard or
overhead-projector with transparencies) of explaining a concept may be
sufficient. For example, it could be argued that the concept of a
polygon doesn't require any special use of a Java applet for
illustration, but it may be useful to show in real-time using a Java
applet that a circle is a limiting case of a polygon when the number
of sides tend to infinity. Topics of choice chould be ones that pose
special difficulties in learning or require a much-needed
illustration. The applets can complement the lecture and the sessions
with information which is difficult to convey in traditional manner.
- Training. The use of Java applets can be made
simple with a careful implementation of the user-interface design and
availability of help documentation. However, there is a steep learning
curve for the actual development of Java applets, particularly for
those with little or no prior programming experience.
- Availability. The above mentioned issue of
training leads to the following questions that need to be addressed:
Should the applets be developed "in-house" or should the
use be made of the ones already in existence?
- If they are developed "in-house", are there
sufficient resources (human, software, etc.) available? How does the
timeline of development compare with the current need?
- If the use of pre-existing Java applets is being made, are
they suitable and adaptable to the current teaching and learning
environment? Are they freely available? For example, a Java
applet whose interface is in German may not be suitable for a class
whose medium of instruction is English. Also, if such applets can not
be made available locally, it can lead to performance issues.
- No Silver Bullet. As with the use of any other
technology, it should be accepted that use of Java applets will not by
itself solve all the problems faced during teaching and learning
process, and may even create some problems of its own. Identifying and
addressing these problems can help avoid potential bottlenecks during
Once the route of Java applets is chosen, there are various
considerations that need to be addressed during the design and development, in order for
them to be useful for educational purposes.
- Limitations of Java Syntax. Java is relatively
new language, and lacks features that are present in established
languages such as C or C++. One of the limitations
from a numerical viewpoint in Java is that there is no native
support for complex arithmetic. It does not have a complex data type,
which is often required in many areas of, for example, Mathematics and
Physics. In such cases, for development of an applet, a complex
class needs to be either acquired from a third-party
or written from scratch. It also lacks in the area of floating-point
representation. Such issues are being addressed, and hopefully the
situation will get better as the language evolves.
- Compliancy. Applets are not backward-compatible
with respect to the browser. So, for example, applets written in Java
1.2 will not work in a Java 1.0-compliant browser, and is an issue
that should be accounted for. Traditionally, the inclusion of a Java
applet in an HTML document has been done via the applet
<APPLET> ... </APPLET>
with appropriate attributes. According to the current HTML 4.0
specification, this tag is considered deprecated and is replaced by
the object tag
<OBJECT> ... </OBJECT>
This becomes an issue for those designing documents that conform to
HTML 4.0 DTD. Since not all browsers presently support HTML 4.0, this
should also be taken into consideration.
- GUI. Applets should facilitate
experimentation wherever possible rather than passive
observation like in a movie. To do that in a user-friendly
environment, applets should have the capability of interactive
visualization of computer-graphical results through a built-in
GUI where the variables such as selected initial conditions and system
parameters can be easily manipulated. The applet GUI should be
equipped with starting, stopping and resetting criteria. Applets
should be designed with a facility (such as a button) for starting the
applet so that the GUI features of the applet can be introduced to the
students prior to the computations. Applets should be
designed to stop at any stage of the computation so that intermediate
results can be explained. A resetting criterion can be useful for
carrying out computations with default parameter values.
- Robustness. There always lies the possibility of
errors being made during a computer-based learning process (such as
choosing an out-of-range parameter). Such errors should be accounted
for, and applets should be designed to accommodate those errors and
prompt the user with appropriate response.
- Efficiency. Applets need
to be fast, due to time limitations in a classroom environment. Since
a lot of data communication in a WWW-based environment is done over
the network, efficiency becomes a major issue, and should be a key
design consideration. If such applets are being used over an Intranet,
this problem can be circumented to a certain extent.
- Security. One of the caveats of the Java applet
programming since its inception has been the security risks associated
with it. Provision should be made for appropriate applet security,
user authentication and running the underlying WWW server with secure
- Help. Even though a student can access a myriad
of information, it does not mean that the information would
easily be processed, assimilated and understood. It may also be, at
times, difficult for the learner to appreciate and understand the
concept behind an applet unless it is supplemented by corresponding
help document. To deal with such issues, lessons explaining the
concept under study and its prerequisites along with usage
instructions to the applet should be developed and included.
- Process Engineering. Ad hoc and unplanned
development leads to programs which are difficult to extend or
maintain. All programming should conform with the standard
methodologies of software engineering.
Applications of Java Applets
In what contexts can applets be used? There are at least four
ways that Java applets can be used in education:
- Informational Applets. These applets are similar
to the Help files in Windows-based programs where by clicking on a tab
or choosing an item from a pull-down menu, the user can obtain more
information on the topic. These applets may have minimal interactivity
on part of the user.
- Concept Illustrating Applets. Such applets
illustrate concepts underlying the subject, for example, the notion of
limit in Calculus. These applets should have maximum possible
interactivity on part of the user.
- Computational Applets. These applets can serve as
examples of concepts being learnt as well as illustrating a
phenomena. They can have the capability of user-interactive
visualization of results and with a built-in graphical user interface
(GUI) to facilitate experimentation by manipulating various parameters
which can be "hard-wired". For example, given the linear
equation f(x)=(1/2)x, the applet finds its fixed point iteration, that
is, 0. These applets should have maximum possible interactivity on
part of the user.
- Assessment Applets. Assessment is fundamental to
every learning process. To assess student learning, quiz applets with
multiple-choice questions can be designed and implemented. A quiz can
present the user with a set of problems, each with multiple choices
that he/she could select from. Such a presentation can even be
"randomly" generated (using Java's random number generator)
from a database of questions. Once selected, the choice can be
processed and appropriate response message with explanations can be
displayed. These applets may have minimal interactivity on part of the
Note that there are other ways that Java applets can be used in
education. Often, learning requires to have ready access to
resources. Therefore, another way Java applets can be used is to
implement a resource system interface consisting, for example, of a
navigation system and a search engine to a database via Java Database
Connectivity (JDBC). Since such approaches are generic, and not
education specific, we have not included them in the above
The following are some scenarios in which Java applets have
been used. The topics and the applets themselves have been chosen for various reasons:
author's interest (bias and limitations of knowledge), widespread use, features and power
of Java that can be illustrated.
The results and effectiveness of educational use of Java applets can be evaluated from the following:
- Students' Response. An interactive feedback form
for this purpose can be made available on the WWW site with Java
- Tutor's Feedback. The tutor could provide
feedback based on students' performance in computer laboratories.
- WWW Site Statistics. Collection of statistical
data and subsequent analysis based on visits to the WWW site with Java applets.
I hear, I forget; I see,
I remember; I do, I understand.
- Paul R. Halmos
The significance of education in any evolving society is
paramount. Java applets can help create an interactive environment of "learning
by doing". Beyond their ability to better convey certain concepts, the applets can
increase motivation and instill greater interest among students, and encourage them to be
more actively involved in the class. Consequently, their understanding of the course
content can further improve. Such an endeavour can also be useful to a teacher during
instruction and otherwise in their course work.
- Dynamical Systems Education on the WWW, By Pankaj Kamthan, Master's Thesis, Concordia University, 1997.
and its use - Design, Manufacture and Engineering Management
Group, University of Strathclyde, UK. An overview of Java and the
benefits of its use for WWW-based simulations.
Analysis and Java - Computational Mathematics Laboratory,
Concordia University, Canada. A WWW site dedicated to topics on
numerical computing in Java.
Steps to Java Internationalization (i18n)
Java #6 I Wanna hold your hand - longer
Mouse Event Handling in Java 1.0
Java #5 I Wanna hold your hand
Java Applets #4
Java Applets #3
Java Applets #2
Java Applets #1
©2016 Martin Webb