Java with an added twist

DESPITE the yards of newspaper column and bookshop shelf space that has been devoted to the programming language Java its promise…

DESPITE the yards of newspaper column and bookshop shelf space that has been devoted to the programming language Java its promise is largely unfulfilled. Java's proponents, originally the people at Sun Microsystems but now including Oracle's Larry Ellison and many others, promised a new age of computing where software was conveniently delivered afresh over a network whenever needed.

So far, all that most of us have seen of Java is some graphical trickery on Web pages that can take an inordinate amount of time to download. It seems that usable large scale applications in Java require greater Internet bandwidth.

Last month a fledgling company called Marimba, started by four of the original lava development team, announced software technology that might just change all this. Carrying on from the percussion theme of their company name, they call their new product Castanet.

The idea is that Java programs are associated with a Castanet "channel" - analogous to a radio channel. A computer is equipped with a "tuner" that can receive the channel and "download the Java code. Software is distributed by companies using Castanet "transmitters". The first time the channel is tuned into, the required program is downloaded onto the client computer's hard disk and executed.

READ MORE

Unlike existing ways of using Java within a Web browser such as Netscape Navigator or Microsoft's Internet Explorer, the program is saved onto disk and doesn't disappear for good when it has finished being used. In computing jargon, this means that the software is "mirrored" rather than being "cached".

The clever (if seemingly obvious with hindsight) twist is that any required updates to the Java program are transmitted down the channel and applied transparently without the user intervening. This means that new information such as online news or stock prices as well as program updates can be downloaded the next time the computer is connected to the Internet.

This is efficient because, after the initial (slow) download, only the changes are transmitted, meaning that updates can occur quickly. Updates are automatically sent as soon as the computer is reconnected using a modem or network card.

Transmission is possible both ways. As well as requesting updates, the client computer can transmit user information back to the software company. This might include the preferred language of the user, the way they use the program or personal information such as the user's birthday.

Marimba's approach is somewhat at odds with the idea of a "pure" network computer without permanent storage such as Sun's recently announced Java Station. Sun boasts the JavaStation is truly "stateless", retaining no trace of what has occurred after the user logs off. The user can store information on the central server but the machine they interact with is relatively dumb. This property is attractive for large organisations because it simplifies system administration, costs less and can rely on the speed of a company's own Ethernet based intranet (internal network).

Marimba's solution is most immediately attractive for the home user who has a hard disk, wants to retain control of their personal system and, at least for the moment, usually has to rely on slow modems and a congested Internet.

Castanet is potentially attractive to software developers because it allows updates and bug fixes to be performed automatically and at very little cost. The idea of programs that update themselves may take some getting used to, however. Imagine, for example, the menu bar of your word processor changing to offer a new feature or even delete an old one as you are typing! Unlike most of today's small Java programs or "applets", Castanet does not need a Web browser to be executed but can appear on the desktop independently as a fully fledged application.

Marimba has also announced a GUI (graphical user interface) builder, especially for Java programs, called Bongo. It claims that applications developed using Bongo can be easily distributed using Castanet. Bongo is designed to make designing attractive visual interfaces for Java programs easy - both for technically adept programmers and those who are used to more straightforward scripting languages.

A home test of the system, using a Unix version of the tuner, managed a slow download of some Java programs. However their subsequent use was as quick and efficient as promised as they ran directly from the hard disk, and the tuner managed to update itself automatically the first time it was used.

If it catches on, Castanet may well be the catalyst that allows Java to be widely adopted even using today's relatively impoverished Internet bandwidth.

The beta versions of the tuner, transmitter and Bongo are available from http://www.marimba.com for Windows 95, Windows NT 4.0 and Sun's Solaris 2 version of Unix. A Power Mac version is promised.