Technology Position

Mainframes (Centralized Computing)

In the early days, applications were built around a central mainframe computer. All aspects of application (data, business logic, presentation) were managed by a central application. The user interface consisted of monochrome "dumb terminals" (thin client).

Mainframes (Centralized Computing)


This centralized model provided a high level of control over the application, but these huge applications became extremely difficult to maintain because of their sheer size.

Client/Server

As hardware became less expensive, it was sufficient to provide users with Personal Computers (PC). The PC has enough power to handle all or at least significant portions of the processing load. This frees up processing cycles on the mainframe and accelerates applications.

The Client/Sever model breaks the application into distinct logical layers. Each layer can be independently developed. The layers can be deployed to different machines to distribute the processing load.

Most Client/Server applications contain three layers:
       bullet Presentation logic - this layer is concerned with the interaction between the user and application. Typically, the user interface is an easy to use as the Graphical User Interface (GUI).
       bullet Business logic - this layer encapsulates every day business processes and enforces the associated rules.
       bullet Data access logic - this layer provides efficient retrieval and storage of data.

All of the increased Client/Server model flexibility and functionality, however, came at a price:
       bullet Each client session requires a separate database connection, which can quickly drain server resources.
       bullet Multiple client configurations requires multiple versions of client business logic.
       bullet Perhaps the biggest problem with rich client applications was that of deployment. When updates are made to the business or presentation logic, the new software must be deployed to all clients. One of the biggest problems was that of "DLL Hell," where one application could break another application by deploying an incompatible shared component or library.

Just when everyone was getting a handle on distributed programming … along came the WEB.

The Web

At first glance, web applications may seem like a retreat back towards centralized computing. The client, now the web browser, connects to the web server, which supplies all presentation logic. Essentially, the client browser becomes a "Thin Client" again. Thin client web technologies available now have even less abilities than mainframes (centralized computing). The "click-wait-refresh" model associated with HTML requires a new page (data requested by AJAX) to travel from the server to the browser upon every user click. This "click-wait-refresh" process can take precious seconds, and often minutes and significantly frustrates the end user productivity. In addition, this approach also weighs heavily on the network infrastructure, with each page occupying a lot of kilobytes - most of which is redundant.

StanDard Web Model


Ardent JavaScript™ removes some of the business logic from the application server and most of the presentation logic from the web server and puts them into the standard client browser.

Ardent JavaScript™ Model


Ardent JavaScript™ does not require large or frequent client/DB information exchanges. Client sessions do not require a permanent database connection. Business and presentation logic software (Ardent JavaScript™ JavaScript toolset and dynamic templates) are located on the web server, but are executed on the client. Keeping all codes on the server means that the application cannot be a vector for viruses and destructive bugs to the client PCs. Writing software that has 100% of its code on the server is easier to architect, debug, update, and manage than either client/server or multi-layer Web applications. Ardent JavaScript™ lets developers build their systems into as many layers as they want, not as many as the technology dictates. Ardent JavaScript™ does not require any client configurations. All programs are automatically delivered to the client browser when the application starts. Now the client can process data offline with desktop performance.

Ardent JavaScript™ is replacing HTML thin client technologies in the same way that client/server has replaced the mainframe. The thin client technology is like reading a book. A book won't answer an unexpected question. It is not possible to cooperate with a book to perform a task. The power of our technology is web browser simplicity and real interactivity. A Ardent JavaScript™-powered HTML page acts like a desktop application with the RAM database inside, which is loaded from the web. In reality, it is a zero-footprint one web page application with desktop performance, web simplicity and distributed offline data processing. It is complementary to all server-side platforms, including Sun's J2EE and Microsoft's .NET.