When Push Comes to Pull
Real World Web
by Jay Lorenzo
Unless you have been stranded on a remote island for the past year, you have no doubt heard of PUSH.
Unless you have been stranded on a remote island for the past
year, you have no doubt heard one or more arguments on the benefits
of using 'push' based server technology on your site. With the
many different approaches taken, most push products can be described
in a way that is somewhat analogous to the terms that are used
to describe television and magazines. People 'subscribe' to 'channels'
of content that 'publishers' make available. Unlike traditional
media though, most push products exist to provide an update or
notification mechanism to let subscribers get access to the most
current content.
Most of the present use of push technology is very 'broadcast'
based, meaning that a small number of channels feed a large number
of subscribers. With the use of personalization techniques push
technology holds promise to evolve into a medium that contains
more 'narrowcast' or 'pointcast' services that can deliver customized
information to a groups or to an individuals.
Although the term 'push' is used to describe these products, the
common concept behind these technologies truly rely more on a
'pull' than a 'push' - a subscriber uses a client-side piece of
software, which may or may not be integrated with the subscriber's
web browser, to query a component that resides on the publisher's
server, and based on pre-established criteria, 'pull' additional
or revised content back to the subscriber, sometimes transparently
in the background without direct user intervention. In many cases,
the client side software is usually offered at little to no cost
to the end user (hopefully encouraging its use), while the server-side
publishing costs are borne by the publisher (who hopes to build
long-lasting relationships with users though the use of the service).
As this year unfolds, expect to see even more product offerings
in this area, particularly from Microsoft and Netscape. Both companies
are expected to make a major, er, push into this area. Microsoft
will lead with a Windows specific implementation called Active
Desktop, which will be released in conjunction with Internet Explorer
4.0 for Windows 95/Windows NT. Netscape will follow suit with
their own take on this technology, which will be centered around
both Netscape's Constellation and Communicator. It is important
to note that both of these products seek to make the browser the
centerpiece of the user's workspace, which will lead to a fundamental
shift in the way that people interact with the Web.
Just a Little Push...
In this column, we'll take a look at some of the current offerings,
starting with two of the more popular products that use a web-centric
focus - Intermind's Communicator and BackWeb Technologies' BackWeb.
The Intermind Communicator provides
the easiest method to deploy push-based content. The intent of
this software is to provide a notification service, advising subscribers
when new content has been delivered, based upon Topics that the
wishes to be notified of. The Communicator integrates into your
browser, and provides a simple way to create server resident objects
called hyperconnectors. The actual creation of these hyperconnectors
is done through the browser itself, via the publish mode of the
Communicator software. After these objects are uploaded to your
web server, users of your site subscribe by selecting links that
download the hyperconnectors to their desktops. As the content
referenced by a particular hyperconnector changes on your server,
the subscribers are provided with notification of that change.
The Intermind approach is noteworthy due to the fact that there
are no server programs required at the publishing site to deliver
the content. The only real server side implementation is at the
Intermind site, where they collect and summarize all of the clickstream
data generated during the user's interaction with hyperconnectors.
Publishers can access the Intermind site for usage reports for
their hyperconnectors. It is important to note that the Intermind
software is designed to shield the real identity of the subscriber.
This means that the publisher can obtain a variety of statistics
of site usage, but will be unable to gain the identity of the
individual, unless a user of the service provides their identity
through an interactive form, etc.
BackWeb takes a more traditional client/server
approach, and allows more graphic based content to be delivered
to the subscriber. Naturally, this requires a bit more effort
- you will need to install a BackWeb server to deliver content
modules called InfoPaks. The content may be interlaced with animated
dialogues and presentations created in popular imaging and development
tools, with the hope that it will the user's attention to it.
These presentation materials can be assembled through the use
of BALI, a BackWeb specific scripting language. Note that BackWeb
and Intermind Communicator ultimately use the web as the main
delivery mechanism for information.
Admittedly, the BackWeb approach consumes quite a bit more bandwidth
than the Intermind approach, but since the delivery mechanism
is optimized to use bandwidth during periods of user inactivity,
it is not usually noticed by the user. Web developers that believe
that they would like to attract and engage subscribers with graphic
content should take a look at downloading a demo version of the
BackWeb server and client.
Some vendors are taking a Java based approach to channel based
information delivery. If your focus is centered on the corporate
intranet, you will probably want to review DataChannel.
DataChannel is in the process deploying channel management and
content tools that they indicate will deliver customized information
to the corporate desktop. At the time of this writing, their demo
is available (providing you are using a Java-enabled browser)
on their Web site. Their ChannelManager
allows user customization as to the appearance and organization
of the desktop, and allows administrators to decide what information
is displayed to individual end users.
Marching to a Different Drummer
From my perspective, the most ambitious push-pull delivery
system to date is the Castanet system from Marimba Inc.,
which was founded by four members of the original Java team at
Sun. Marimba's main focus is to provide tools that allow the deployment
of Java based interactive applications over the Net. Additionally,
this technology also allows the delivery of Java applets and other
HTML and web-based content using this same technology. Not surprisingly,
most of the Marimba implementation itself is done in Java.
Castanet provides a two-way method of communication between the
server and client. They describe their implementation in terms
of a Transmitter, which is deployed as a server, and a Tuner,
which resides on the subscriber's computer. The Tuner is the user
interface to the Castanet system, and is responsible for subscribing
to the various Transmitters available on the Internet. Once subscribed,
the Tuner will 'talk' to the Transmitter as connectivity permits,
to make sure the subscriber has the most current content. The
current Transmitter implementation is a stand alone server, although
Marimba has indicated that NSAPI and ISAPI plug-in versions should
be available in the near future. To allow Transmitters to reach
into firewalled intranets a Proxy server is available that allows
the delivery and caching of channels. Additional components include
Bongo, an exceptionally well done interface builder and interface
widget collection written in Java, and a Repeater, which allows
the replication of channels to provide wide area deployment.
A unique feature of this system is that it is designed with the
idea that users will not always be connected to the Internet,
which means that there needs to be a method of persistence, but
they once they, they will need to interact and update their current
information and programs. Castanet is responsible for identifying
the incremental differences between the content hosted on the
Transmitter and the content currently residing on the client.
This is accomplished by creating MD5 checksums of all of the files
that currently comprise a channel. Once the Tuner is run, the
Transmitter can compare the checksum signatures very quickly,
and deliver the most current content, without any intervention
by the user. A great example of potential use would be a the Castanet
equivalent of what Nicholas Negraponte (sp) referred to as 'The
Daily Me' in the book 'Being Digital'. Each night, an agent based
program filters through and finds stories of interest to a particular
subscriber. When that subscriber attaches to the Internet, the
Transmitter pushes down the results of those searches, giving
the subscriber the specific content tailored to the user's criteria and preferences.
Conversely, the Tuner can return information
back to the Transmitter as well. An example of this would be a
sales engineer, who downloads a copy of a trip itinerary, map
and expense report prior to calling upon several customers. Upon
returning to the office, the employee can connect to the Transmitter,
uploading the expense report to accounting, and upload trip reports
for the account managers of the customers visited.
Of course, some of these systems that we are describing do require
a great deal of Java knowledge. For those looking to get their
feet wet and have little or no Java experience, the Bongo interface
builder gives you the ability to create 'Presentations', which
is Marimba-speak for Java based dialogs and interactive panels
that respond to user input. Although it is possible to create
applications and even applets in this fashion, keep in mind though
that you will not get the maximum benefit of this tool without
some Java programming experience. Experienced Java developers
will find the widget collection alone to be worth the price of
Bongo.
As previously mentioned, you are not limited to the deployment
of Java applications. Java applets, Shockwave, HTML and other
web content can be delivered in the same fashion as applications,
which can be a very convenient feature for off line browsing of
HTML-based content. The delivery of tutorials or other reference
materials are good examples of HTML content that is well suited
to this approach. And just as with applications, it is possible
to keep the content updated incrementally as changes occur. As
with the other software we have mentioned in this column, Castanet
can also use a web browser as an integral component of a channel,
which allows developers to use their existing web content without
further modification
All in all, it's too early to predict what impact Marimba will
have, but it is plain to see that web developers have spent an
inordinate amount of time trying to make Net based applications
out of HTML and CGI programming. There is a real need to find
a better alternative to the current design of Internet based applications,
and Castanet may well be the next step.
In closing, try to analyze and understand which of these services
can add value to your site. Many of the push-pull products available
today can be very effective tools in building relationships between
you and the users of your site. They will not, however, make your
existing content any better. The content you offer must be compelling
enough to make users want to see new additions. And with that
sermon out of the way, feel free to send comments, questions or
flames to jayl@digitalrain.net. See you next time.
Web Developer® Site Feedback
Web Developer®
Copyright © 2000 internet.com Corporation. All rights reserved.