A final application of modern web technology, above simple publication and communication, is the improvement of the way that researchers can use computation itself. Projects that use computers as a primary element, for instance in experimental and constructive mathematics, often end up dividing the research team into programmers and `others'. The others are the ones that can only look on, and suggest ideas, as the programmers spend most of their time working on coding the calculations. They are crucial in the team, but often do not get to interact with the computer simulations themselves. In part, the NCSA developed Mosaic to allow these important members of the team to easily access the results of the programming team. There are now many specialized tools that allow researchers to manipulate the data from, say, supercomputer calculations. Unfortunately, these tools are often specialized, and either need extensive work to install them, or force all the researchers to be physically located in the same facility as the programming team. An important part of any modern facility dedicated to use development of computational techniques for the mathematical sciences must be the easy distribution of the computing tools for the non-programming researcher. Executable content is an obvious mechanism for this distribution. A programmer can easily code an interface into his simulation system, using Java, that produces a fully graphical tool that the other researchers in the team can use. This may be something that sets up initial conditions, and allows all researchers to run the simulations, to ways to scan through computer-generated visualization data.
It is possible, for small applications, where processing time is not a major issue, to write Java code for the entire calculation itself and have it available on a web page. The code can then be loaded and run with a simple mouse-click. For larger applications, the bulk of the computational work can be done on a powerful machine, using whatever language is most appropriate, and only the user interface need be coded in Java. A demonstration of the former is found in my Mandelbrot set paper. There is a more sophisticated version of that work in progress, as part of a collaboration with June Lester. The new version will allow the true, research-level, investigation of Julia sets for a range of important functions. This latter project could quite easily be split up so that the computationally intensive part will be run, in a highly-optimized way, on a fast machine, and the calculation will be viewed and controlled via a web browser running on a smaller machine (for instance, a portable computer). The browser would simply be communicating using Java, across the network, with the original machine.