|
There is currently a lot of buzz about companies like salesforce.com, which offer web-based alternatives to traditional desktop-based enterprise applications. Even Microsoft is investing huge amounts of money into the development of future web-browser-based competition to their own Office and other Windows applications. But this was not always the case: For a long time, people doubted that these web applications ever could match the power of a traditional desktop software program.
You probably remember what the World Wide Web was like when it all started: You could see a page with some text and some images in your browser, and change to a new page by clicking on links. Additionally, there were forms to fill in and submit, for instance, when you placed an order at a website.
Compared to the luxury of typical Windows or Mac applications, with all their dynamic sliders, context-sensitive menus, dialog boxes, and all other sorts of very close interactivity, the Web seemed to be stone age. It succeeded of course because of the network - being able to access information anywhere and exchange data with almost anyone, something the typical desktop application could not do at that time.
So when programmers started to explore the Internet and the Web browser not only as a vehicle for browsing, but actually as a platform for real applications - called web applications, Intranet applications or by similar names - they were very quickly looking for ways how to make a website more interactive, more “application-like”.
The first big step towards that goal was Javascript. It meant that, fundamentally, some code execution can also happen within the web browser - the browser is no more just a passive vehicle for displaying content from a web server, but can play a more active role.
Then came the idea of the Java applets, complete small mini-programs running on a “virtual machine” within the browser that promised to offer full application capabilities with no security risk. Unfortunately, after creating an enormous stir and high expectations, this approach did not go far in the reality - crashing virtual machines, slow execution and especially the challenge of developing good Java applets and code made this one of the big debacles in the early web age.
But programmers did not stop looking for new ways, and around 1998, a couple of programmers created a much simpler concept that, for the first time, allowed to break through the “page reloading” paradigm without re-inventing everything.
Because the biggest problem of early web applications was the so-called “round-trip”: Whenever the user did some action like pressing on a button or entering some text, for the system to react and provide some results, there needed to be a full page reload from the web server. The user input was submitted (typically by a form), and the web server computes the response (a new web page) that was then transferred back to the user - a full page reload, not only with the inevitable delay but also very visible because essentially everything in the windows was updated.
The key to the new technology - years later to become known as “AJAX” - was to communicate with the server in the background of the web-page, and update the existing web-page with new results.

For instance, imagine entering text in an input field. With traditional web programming, the input will be checked (for instance, compared to a list of valid names) as soon as the user submits the form. With AJAX programming, the web application can check the input as it is typed, by sending keystrokes back to the server (in the background, using Javascript and a special communication protocol called XML HTTP requests). The server answers by showing the user all names that (partially) match his input and show them in a dynamic drop-down list. While this example sounds simple, the technique is very powerful. One of the first commercial applications using the technique in was actually Microsoft Outlook Webaccess 2000 - which tried to mimic the functionality of Microsoft Outlook within a normal web browser, a typical case for an Internet application.
The term “AJAX” (standing for “Asynchronous Javascript and XML”) was actually created much later, in 2005 in a popular essay by J.J. Garret. And the great excitement around AJAX, AJAX frameworks and the like only broke out in the years afterwards (and is still continuing, as most companies including Microsoft are struggling to build AJAX frameworks within their web programming frameworks). Currently, the most popular AJAX application is probably Google maps.
The truth is that Comyan used AJAX techniques already extremely early, probably around 2001-2002, from a pure perspective of technological need and sophistication, without knowing anything about the hype that would one day surround it.
And our first really great AJAX application was released in 2002-03 as the Comyan ePaper. Its success with the readers is much based on the fact that the user interface is really slick and, most of all, responsive - much better than many ePaper systems that were brought out in later years.
So while Comyan of course cannot claim to have invented AJAX (actually not even in the context of ePapers), Comyan’s programmers were certainly among the first so recognize the potential and use it to build really powerful and comfortable web applications.
http://en.wikipedia.org/wiki/Ajax_programming
http://www.adaptivepath.com/ideas/essays/archives/000385.php
|