be delivered over the web for viewing and controlling
via a web browser. The advantages of this approach
are two-fold. Firstly, the development of an anima-
tion does not require expertise in using complex ani-
mation software and is thus a much lower hurdle for
teachers wishing to produce examples. Secondly, the
delivery and viewing of animations requires a mini-
mal, platform-independent capability to be available
to the end user (i.e. just a web-browser) so that the
potential audience is maximised.
At the moment, only examples in the ’C’ program-
ming language are being considered, and we do not
provide full automation for the process of creating an-
imations from example ’C’ programs. In future work
we plan to maximise the automation using XML to
markup programs and a web-service to upload exam-
ples and provide fine tuning control of the animation
generation through a web interface. We also recog-
nise the need to support more graphical displays of
complex data and objects for more widespread use
of the animation tool. The preferred approach would
be to develop document object models to update the
client and keep issues of presentation separate from
data as much as possible. This approach maximises
flexibility and platform independence with modern
standards-compliant browsers. However, we feel that
a higher priority is to develop support for more inter-
action from the end user in running, controlling and
changing animated algorithms. We believe that our
simple approach to algorithm generation will enable
more flexible and adaptable interactions than has been
practical with traditional approaches.
Since the early days of algorithm animation, there
has been an emphasis on the use of advanced graph-
ics and support from large animation development en-
vironments (such as Zeus (Brown, 1991)). More re-
cently the emphasis has returned to effective use in the
learning process. With studies such as those discussed
in (Hansen et al., 2000) and (Hundhausen et al., 2002)
the importance of interaction rather than simple ob-
servation has been recognised. This new direction
was also discussed in (Naps, 2005) where Jhav
´
e was
also described. Jhav
´
e is a Java based animation tool
which has been designed to take plugins for new an-
imation techniques, and thus can act as a controlling
shell for animations. This is relatively platform in-
dependent through the use of Java and can support
an extensible set of interaction and animation styles.
Another Java specific animation tool is Jeliot 3 (Suti-
nen et al., 2003) which has evolved from Jeliot 2000
and uses self-animating data types and is designed to
allow easy uploading of examples by end-users. In
(Bednarik et al., 2005) it is argued that smarter tools
are needed to cater for and to adapt to the different
abilities of users, referring to studies of taxonomies
of software visualisation tools.
Our tool presently used mostly HTML and just a
few lines of JavaScript on the client side. It is, never-
theless, a light weight and yet capable animation tool.
We have coded over thirty six animation examples
(manually) and used these to teach a first-level pro-
gramming course. One important advantage of our
approach is that the client CPU is not significantly
loaded.
REFERENCES
Bednarik, R., Moreno, A., Myller, N., and Sutinen, E.
(2005). Smart program visualization technologies:
Planning a next step. Proceedings of the 5th IEEE In-
ternational Conference on Advanced Learning Tech-
nologies (ICALT 2005), pages 717–721.
Brown, M. H. (1991). Zeus: A system for algorithm anima-
tion and multi-view editing. IEEE Workshop on Visual
Languages, pages 4–9.
Hansen, S., Narayanan, H., and Schrimpsher, D. (2000).
Helping learners visualize and comprehend al-
gorithms. Interactive Multimedia Electronic J
Computer-Enhanced Learning, 2.
Hundhausen, C., Douglas, S., and Stasko, J. (2002). A
meta-study of algorithm visualization effectiveness. J.
Visual Languages and Computing, 13(3):259–290.
Naps, T. L. (2005). Jhav
´
e: Supporting algorithm visual-
ization. IEEE Computer Graphics and Applications,
25(5):49–55.
Robinson, D. (1996). The www common gateway interface
version 1.1. In http://weeble.lut.ac.uk/System-
docs/Internet-drafts/draft-robinson-www-
interface-01.txt and http://www.w3.org/
pub/WWW/CGI/Overview.html. IETF.
Sutinen, E ., Tarhio, J., and Terasvirta, T. (2003). Easy al-
gorithm animation on the web. Multimedia Tools and
Applications, 19(2):179–194.
ANIMATING ALGORITHMS OVER THE WEB
407