The HyperText Computer and Rich Internet Applications

The HyperText Computer may provide an alternative to the need for special technologies created just for Rich Internet Applications.

The HyperText Computer (HTC) is a computer built on the HyperText Transport Protocol (HTTP). In a HTC, every operation is implemented by a HTTP request and all information is accessed via document URLs.

Rich Internet Applications (RIA) are programming environments that blend the capabilities of desktop and web applications, these offer advantages such as richer interface, smoother interaction, balance of processing load and network efficiency. At the present time, RIAs are being popularised around a variety of technologies – Flash, Flex, ActiveX, Java and others.

The amount of processing and storage done locally verses that which is done remotely is one of the key tradeoffs in designing computing solutions. Larry Ellison’s vision of a “Network Computer” (resurrected just this week) argues that the future is in doing almost no computing or storage locally. Full blown PCs running their own applications are the other extreme, with RIAs a middle ground with processing shared between the local computer and a remote server.

Today each of these scenarios employs different programming technologies and methodologies to deliver computing to end users. In the HTC model, local and remote computing resources are presented uniformly to programmers as a capacity to fulfill HTTP requests. This means that the HTC offers a model of computing that can support each of these scenarios using one programming model.

A minimal computer with just enough power to run a user agent (browser) would source all its processing and storage through HTTP requests of remote computers. If more processing power and or storage was available locally it would be available to fulfill processing and storage requests that must be done off-line or with lowest latency. Applications could, as well, be run completely locally, drawing only on the local computer’s capacity to service HTTP requests. In this way, the programming model of the HTC avoids the necessity to commit to a technology (like Flex) which forces you into one of these three models for running your application.

Instead of using special technologies to achieve a desired balance between local and remote processing – an HTC allows the right balance to be achieved based on factors like: the availability of local resources and the willingness of the owner of the programming code in question to allow it to be transferred to and executed by a local HTTP server.