Tuesday, April 7, 2009

Its not Coding,Its AJAXING

In the beginning, Tim Berners-Lee created HTTP and the Web. And the Web was without commerce, and void. And darkness was upon the face of retailers. And the spirit of commerce, Jeff Bezos, moved upon the face of the Web. And Bezos said, "Let there be electronic shopping carts, and one-click buying." And there were sales. And the computer gods saw the sales, and saw that it was good.

It's hard to imagine the Web without the electronic shopping cart. It was a seminal advance that transformed the Web from an information resource into a business platform. A fundamental shift is happening again, and this time, a programming technology is driving the change.
The technology is Ajax, or Asynchronous JavaScript and XML, and it's making the Web as engaging, interactive and, most important, as responsive as native desktop applications. Better still, Ajax does this without the deployment, management, or overhead costs associated with managing desktop environments.
That's good news for businesses looking to give their customers a better, more responsive online experience. Look no further than Google Docs, Gmail, Meebo, and Outlook Web Access for popular Web apps that get their mojo from Ajax.
Better app performance means a better user experience. In the world of e-commerce, that can be the difference between a sub-par user experience that leads to shopping cart abandonment, and a spectacular one that keeps people shopping and builds word-of-mouth referrals.
For example, Ajax-powered e-commerce apps can allow shoppers to hover their mouse over a product to get a pop-up window with the product's details, including photos. There's no clicking, no data transfer, no page refreshing. The information is at customers' fingertips.
Applications with a database back end, such as inventory control, accounting or shopping carts, can respond with the same look, feel and functionality as non-Web desktop apps. Software updates are painless, requiring no effort on the part of users, desktop IT, or database administrators (a big plus).
However, while Ajax is a win for users and marketers, it has a dark side for developers. It's an entirely new way to code applications, and the learning curve is steep. Compared to other programming paradigms, many more lines of JavaScript and other code must be produced, tested, debugged and maintained for Ajax apps to function.
As with all programming languages, Ajax has its advantages and disadvantages. For example, even skilled developers have built Ajax apps that -- due to their asynchronous nature -- end up overloading servers or bogging down databases.
For database-driven apps (meaning, all e-commerce apps), many Ajax development tools pose problems when dealing with updates. Typically, developers have to refresh the entire database, pull up all affected forms (screens), update each form's logic, rewrite the layout code, and test the changes before redeployment is possible.

Ajax: The Next Generation


Using codeless Ajax, developers don't have to be JavaScript or XML gurus to create polished Ajax apps. The GUIs are created visually, and the code to manage asynchronous presentation and database operations is generated, optimized and maintained automatically.
I estimate that eliminating manual Ajax coding can cut my development time by 40 to 50 percent. Based on the pre-betas I have seen (and am providing feedback on), anyone with a modicum of development skill and experience will be able to use this tool to create online solutions that look, feel and behave with the same quality we expect of an enterprise app.
That's a game changer. Try that with ASP.Net, Flash, Ruby on Rails, Perl, PHP or pretty much any other application development environment today. Contemporary development platforms have become squarely focused on professional developers, cutting out the entrepreneur, the small business, or the penny-pinching mid-sized organization.
Codeless Ajax could be the breakthrough that, like earlier generations of RAD technology, changes this equation.

No comments: