just ui razzle-dazzle. ajaxsakaguch/msis655/asaravala2005.pdfajax developer's toolkits coding...

6

Upload: others

Post on 12-Aug-2020

12 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: just UI razzle-dazzle. AJAXsakaguch/msis655/asaravala2005.pdfAJAX Developer's Toolkits coding AJAX applications can be challenging, but developers don't have to go it alone. A growing
Page 2: just UI razzle-dazzle. AJAXsakaguch/msis655/asaravala2005.pdfAJAX Developer's Toolkits coding AJAX applications can be challenging, but developers don't have to go it alone. A growing

For enterprise apps, asynchronous

JavaScript and XM L offers more than

just UI razzle-dazzle.

AJAXPuts the Browser to Work

IT'S EASY TO SEE WHY AJAX (ASYNCHRONOUS JAVASCRIPT AND

XML) has captured the imaginations of so many Web devel-

opers. For the first time, browser-based UIs are rich and full-

featured enough to do away with so-called thick-client desk-

top applications.

At first glance, AJAX may seem best suited for consumer-

facing applications. Gk)ogle Maps, Yahoo's Flickr photo-sharing

site, and Amazon.com's A9 search engine are all fine examples

of how AJAX can add some glitz to a Web site's UI. For enter-

prise applications, however, it can be difiicult to see how AJAX

can provide enough real benefit to offset the risks involved in

adopting a new, complex form of Web development.

But IT managers should be careful not to write off AJAX

completely without a deeper look. Indeed, the same tech-

BY A M I T A S A R A V A L A ! I L L U S T R A T I O N BY J E F F B R I C E

I N F O W O R L D . C O M 1 0 . 1 7 . 0 5 1 2 3

Page 3: just UI razzle-dazzle. AJAXsakaguch/msis655/asaravala2005.pdfAJAX Developer's Toolkits coding AJAX applications can be challenging, but developers don't have to go it alone. A growing

why should a browser ask a server torun a simple task when the browser hasenough power to do the job itself?

:tft]

nologies that can add fun to consumer apps alsohave a serious side. And as a handful of companieshave already found out, that side can be one thatgreatly benefits IT when tapped correctly.

The IT team at Tupperware Mexico, for example,first turned to AJAX when it tried to implement anonline ordering and inventory tracking system thatmimicked one built by their counterparts in Aus-tralia. The Mexico team, however, found that itdidn't have the resources to run the application.

"We have only one Tl, one server," says LiborioLongoria, technology manager at Tupperware'sMexico sales office and plant. To make mattersworse, the Tl has to handle the traffic of 40 to 50internal users simultaneously, plus tliat of dozensof distributors trying to log on to the system.

So, when Luis Derechin, CEO of AJAX devel-opment tool vendor JackBe, called out ofthe blueand told Longoria about AJAX, the harried tech-nology manager was ready to give it a try.

A.TAX encourages developers to split Web pagesinto compartments of data that can be refreshedindependently ofthe entire page, and to writeapplications that act on data within the browserrather than on the server. After all, why should abrowser ask a server to run a simple task when thebrowser has enough processing power to do the jobitself? The result is that considerably less data anddisplay information has to travel over the network.

Within months of starting to use JackBe's tools,Longoria's team had a system that ran efficientlyon just one server. "I think our customers arehappy, or at least satisfied, with our service," lon-goria says. "We do order entry, billing, accountreceivables, promotions, inventory — and we get200 orders per week, per distributor, sometimeswith all of them in the system at the same time. Thereply still is good."

Use of AJAX to reduce network traffic isspreading fast, especially in regions where cus-tomers and clients aren't always able to accessapplications over broadband connections. Duringthe past two years, JackBe has helped more than adozen Latin American companies roll out AJAX-based applications. These companies aren't small,either: Banamex, Cemex, and Sky Latin Americaall use AJAX.

Best of Both WorldsAnother benefit of AJAX — beyond more efficientnetworking — is that it makes deployment of zero-footprint software possible. Rather than installinga copy of an app on each and every desktop in anoffice, IT staff can maintain the code in one placeand deploy it over the Web to anyone who wantsit. Likewise, bug fixes and software updates can berolled out to every user automatically.

Enterprise application vendors have beenpromising this vision to their customers for years,but the limitations of traditional HTML andJavaScript interfaces have made it difficult forWeb-based applications to compete against desk-top software. It's no surprise, then, that some ofthese same vendors are among the first to push theboundaries with AJAX.

Scalix, for instance, a vendor of Linux-basedmessaging and calendaring products, uses AJAXto add desktopiike features to its online server-administration tool and Web-mail interface.Indeed, the latter, called Scalix Web Access, is sosimilar to modem desktop e-mail clients such asOutlook and Thunderbird that it's easy to forgetyou're using a Web-based application (infoworld.com/3.330). Users can re-sort their inboxes, viewmessages in a preview pane, and browse messagesin different folders — all without the tedious pagerefreshes that you might expect from other Web-mail interfaces such as IBM Lotus Domino Web-Mail or Microsoft Outlook Web Access.

"It's the best of both worlds," says Scalix CTOAndy Palay. "From the user's perspective, it doesn'thave these major transitions from one state toanother. From an administrator's perspective, it hasthis wonderful feature where I don't have to worryabout installing software on every computer."

The story is much the same at NetSuite, aprovider of hosted business apps. The companywas built on the idea that small and midsize busi-nesses can save money by trading in-house CRMand ERP software for hosted senices. But to con-\'ince customers to give up their rich desktop apps,NetSuite had to offer a Web application that coulddo all the sanie things at nearly the same speed.

That's where AJAX comes in. By compart-mentalizing the various data sets displayed on

24̂ N F O W O R L D C O M 1 0 . 1 7 05

Page 4: just UI razzle-dazzle. AJAXsakaguch/msis655/asaravala2005.pdfAJAX Developer's Toolkits coding AJAX applications can be challenging, but developers don't have to go it alone. A growing

AJAX Developer 's Toolkits coding AJAX applications canbe challenging, but developers don't have to go it alone. A growing list ofvendors offer tools that make building complex Web apps a snap.

Product

{ackBe NQ Suiteinfoworld,com/3337

Microsoft Atlasinfoworld.com/3338

Ruby on Rails

the dashboards that customers use toaccess the CRM database, NetSuitewas able to add desktopiike features,including in-line editing and instantlist re-sorting. The dashboard nowfeels like "an application that we built,rather than a Web site," says MiniPeiris, senior director of product man-agement at NetSuite. "Being able toleverage AJAX is great. Our dash-board is definitely a competitiveadvantage for us."

Just as JackBe helped TupperwareMexico, both Scalix and NetSuite areusing AJAX to decrease server loadand network traffic. For Scalix, it's aselling point: Customers may be moreinterested in buying the company'sproducts if they see that they're easieron the network and place less burden on serversthan competing offerings. For NetSuite, it's ameans of keeping the company running efficientlyeven as its customers scale up operations.

NetSuite users, for example, can re-sort lists allthey want without hitting the company's servers orhogging bandwidth because that functionality ishandled completely within the browser. Likewise,when a data point changes — say, when a salesper-son edits a customer's phone number on one ofNetSuites dashboards — the application only hasto send the number to the server and retrieve anupdated list. In fact, under NetSuite's architecturethe application doesn't even have to retrieve the fulllist because portions are loaded dynamically as theuser scrolls through them.

"It really was about optimizing performance forour end-users and for our servers," Peiris says. "Youreally want to have an interactive experience, andyou want that to be as high performing as possiblewithout putting a hea\'y load on the server."

Tools and TipsFor those willing to give AJAX a shot, a numberof development tools are available. As of this writ-ing, Backbase (infoworld.com/32O8), JackBe NQSuite Cinfoworld.com/3234), and Tibco GeneralInterface (infoworld.com/3328) are the most

Description Price

Backbase 3.0 Standard Editioninfoworld,com/3336

JavaScript library replaces JavaScript and HTML $5,760 per CPU

code with its own BXML language designed for

easy AjAX development

An IDE and set of JavaScript libraries for

creating cross-platform AJAX applications

without starting from scratch

Starts at $50,000

The Visual Studio 5 "eariy alpha" release $299 per seat

includes an ASP.Net extension for creating {expected}

cross-browser AJAX interfaces

Framework for developing Web applications in

the Ruby programming language, with several

functions for accelerating AJAX development

Open source

Sun Java Studio Oeator 2infowo rid.com/3 3'10

Early-access Java IDE containrng some AJAX $99 per seat

components that can be added to applications (expected)

Tibco General Interface 3.0infowcrid.Con-i/3341

IDE provides step-through debugging, memory Starts at $25,000

management, and other tools for developing

AJAX applications

advanced commercial products in the space —though each comes with a hefty price tag (seetable, "AJAX Developer's Toolkits," above).

Not to be left out, both Microsoft and SunMicrosystems have released early-access versionsof their own AJAX development tools (infoworld.cGm/332,9). The Ruby on Rails developmentframework is another mature tool, and it offers theadditional attraction for many developers of beingcompletely open source (infaworld.com/333l).

Whatever tools you use, keep in mind that cre-ating desktopiike applications entails designchallenges that Web developers don't normallyconfront. For example, users have become accus-tomed to using the Back button to revert to theprevious state of a Web page. For AJAX-enabledsites, however, the Back button might unload theentire application unexpectedly. Depending onthe nature ofthe application and its audience,some users may have a hard time adjusting.

Scalix's Palay says his team disabled somebrowser buttons for exactly this reason. "Wepresent Scalix Web Access and the [admini-stration] console as desktop applications. Whenyou run them, the window you get has no browsercontrols," he says.

NetSuite's developers made similar considera-tions, Peiris says. They settled on a design that

••••l^l^MllctN F O W O R L D . C O U 1 0 . 1 7 . 0 5

Page 5: just UI razzle-dazzle. AJAXsakaguch/msis655/asaravala2005.pdfAJAX Developer's Toolkits coding AJAX applications can be challenging, but developers don't have to go it alone. A growing

splits up major sections ofthe application overseveral "pages" so that users can use the Back but-ton to jump between them. "You can still use yourBack button effectively," Peiris explains. "If you'reon the leads dashboard, you can hit Back to get toyour sales dashboard."

Jesse James Garrett, director of user experiencestrategy at Adaptive Path and the originator oftheAJAX acronym, says he believes users will learn toadapt to new interfaces, provided that the inter-faces are designed intelligently. "There are lots ofwaj's in which interaction on the Web five years agowas different from the way it is today," he says."From year to year, you can see the evolution ofthose conventions, and users have adapted to thatjust fine."

One other note about developing AJAX-basedapplications: Don't try to slip AJAX into a productjust because it's the latest technology. As ZapThinksenior analyst Ron Schmelzer puts it, AJAX by

itself isn't a differentiator. No doubt anyone whotries to sell AJAX-based products — or any devel-opers who propose using AJAX in-house — willstill have to prove that their implementation actu-ally does something worthwhile.

"AJAX by itself doesn't mean anything,"Schmelzer says. "You can say, 'Hey, I've got AJAX,'but the response is going to be, 'OK, but what doesyour product do?'"

Given the benefits of AJAX — both for the frontend and in the back office — Schmelzer says it won'tbe hard for a lot of companies to come up withproducts that use AJAX wisely and in innovativeways. In fact, he says he sees uses for it everywherehe looks. "A lot ofthe next versions [of applications]that people will buy — a lot of those versions willhave AJAX based interfaces," he says. "By this timenext year, AJAX will be everywhere." *">Amit Asaravala is manager of editorial and content

strategy at TechSoup.org.

AjAX Comes of AgeA)AX {ASYNCHRONOUS JAVASCRIPT A N D XML) ISN'T A

new technology. Rather, it's a method of using severalexisting technologies — including CSS, JavaScript, XHTML,XML, and XSLT — to develop Web applications that lookand act like desktop software. Jesse )ames Garrett, directorof user experience strategy and a founding partner of Adap-tive Path, coined the term in a paper he published on theAdaptive Path Web site in February (infoworld.com/3344).

The term asynchronous refers to the way AjAX applica-tions communicate with their host servers. Under the oldmodel, the Web browser refreshes the current window eachtime a user performs some action that initiates a request fornew data from the server.

Under AjAX's asynchronous model, the browser doesn'thave to wait for the user to request an action, nor does ithave to refresh the entire window to show newly retrieveddata. Instead, the JavaScript code running in the browsercommunicates with the server by passing XML-formatteddata back and forth. The JavaScript code can also applystyle sheets to retrieved data and display it in one portion

ofthe existing Web page.Among consumer-facing applications, Google's Gmail and

Google Maps services are the most common examples. !nGmail, AJAX is responsible for the way threaded conversationsslide open to reveal the text of different messages. In Maps,it allows users to drag and scroll across a map In a seeminglyseamless fashion.

Garrett also points to Yahoo's Flickr photo sharing appli-cation and Amazon.com's A9 search engine. And it's likelythat Yahoo's new Web-mail service, based on technology itacquired with the purchase of Oddpost, will soon get plentyof attention from A) AX proponents.

Increasingly, however, AJAX application vendors are look-ing to the enterprise. For instance, Scalix's Web Access e-mailapplication actually resembles Microsoft Outlook more thanOutlook's own Web-mail interface (infoworld.com/3330).

But there are some limitations on where A|AX applicationswill work. Because they make use of some ofthe latest Webtechnologies, they will run only in certain Web browsers — thelist, however, is expanding (infoworld.com/3345). —A.A.

N F O W O R L D . C O M 1 0 . 1 7 . 0 5

Page 6: just UI razzle-dazzle. AJAXsakaguch/msis655/asaravala2005.pdfAJAX Developer's Toolkits coding AJAX applications can be challenging, but developers don't have to go it alone. A growing