WWW: Helper Applications
David R. Woolley (drwool@skypoint.com)
Tue, 6 Jun 1995 08:27:38 -0600
Peter Murray-Rust has put his finger on how many of the existing problems
with the Web will be solved, I think. Many Web browsers have the ability
to start up "helper" applications that can display various types of files
that the browser itself can't handle.
A Web document essentially "tells" the browser what kind of document it
is. If it's a type that the browser can handle itself - an ordinary HTML
file, for instance - the browser simply displays it. Otherwise, the
browser checks its configuration to see if it has been told what program
it should start up when it receives a document of this type.
The Web-based course in protein structures that both Peter and Allan Mills
have mentioned makes excellent use of this capability. They use a
special- purpose molecular visualisation program that allows students to
manipulate molecules on the screen. I haven't actually seen this work, but
it sounds wonderful! I'd encourage everyone to check out their Web site:
http://www.cryst.bbk.ac.uk/PPS/index.htm
There's no inherent limit to the complexity of a helper application. A
helper application could manage fast, intricately controlled interactions
that would be impossible over the Web itself.
I should mention a few drawbacks to helper applications, though:
1. The helper application has to be distributed to every user, who must
then go through an installation and configuration step before using your
Web site.
2. Platform independence - one of the Web's great strengths - is lost or
compromised. Since a helper app runs on the user's own computer, it has to
be compatible with the user's hardware and operating system. So depending
on your audience, you might have to create several versions of the helper
app: one for the Macintosh, one for Windows, one for Unix, etc.
3. Writing a helper application is not simple! It's a breeze to create
HTML documents - the language is easy to learn, and there are a growing
number of easy-to-use HTML editors that will do most of it for you. But
creating a helper application is a full-fledged programming task.
Sun Microsystems has introduced a new language called Java for writing
helper applications, and an accompanying browser called HotJava. Together,
they will soon address my first two points. It doesn't solve them quite yet,
because currently Java is only implemented for Solaris, the Sun version of
Unix. But it's being ported to other platforms as we speak. We can talk more
about Java later, if people are interested.
But even when Java-capable browsers are available for Windows and the
Macintosh, my third point will still be an obstacle. It will still be a
complex programming job to write a sophisticated helper application.
I am very impressed with the description of the protein structures course
at Birkbeck. It sounds like a very creative and innovative use of
technology. I hope it doesn't seem too cheeky to ask Peter or Allan how
much it cost to develop and administer this course.
Now I understand that cost often isn't a primary concern in a research
project like this - the point is more to see what can be done. Also, I
understand the difficulties involved in pushing the edge and doing
something for the first time. So maybe a more relevant question is this:
now that you have done this once, how much would it cost to develop and
administer your next course using similar technology? Let's suppose this
new course is in a different subject - architecture, say - that requires
new helper apps to be developed.
What I'm trying to get at with this question is whether, given the current
state of the Web, the strategy used for the Birkbeck course is a cost-
effective method of teaching.