CHANNELS
 
 
 
 
 
 
 
 
ON THE WEB
 
 
 
 
PRINT EDITION
 
 
 
 
BZ MEDIA
 
 
 
 
ADVERTISER LINKS
 
 
 
 
 
LOADING...
LOADING...
 
 
AS OF 8/21/2008 7:55PM EST
Two Sides to AJAX Toolkits
By Allen Holub

March 15, 2006 —  Most open-source AJAX libraries are not commercial grade. That is, most of the libraries are missing chunks of functionality, and the documentation runs from poor to nonexistent. You’ll have to weigh the pain of wading through the JavaScript sources and creating your own documentation against the pain of writing all this JavaScript from scratch.

One significant exception to this rule is TIBCO’s General Interface 3.1—a commercial product with an impressive drag-and-drop GUI-style user interface builder and decent documentation. The actual AJAX components are solidly built and look great on the screen, and you can throw together a UI in record speed.

Corporate Visual Basic developers will be right at home with General Interface, and it shouldn’t take more than an hour or two to be productive with it. General Interface is a whole framework, not just a widget library, and it has many of the problems of frameworks (such as a framework-imposed directory structure on your projects). But if you’re used to a framework approach, you’ll love it. The General Interface GUI is interesting in that it can run hosted in a browser (though you’ll get a bunch of annoying pop-ups warning about ActiveX controls when you try it).

One place where TIBCO differs from the alternatives is in how the AJAX widgets talk to your application. Most libraries perform a simple HTTP POST or GET. General Interface uses SOAP for everything, which is a mixed blessing. SOAP does completely isolate the UI from the underlying application. General Interface has no server-side component—you just use whatever SOAP provider you like, including Java’s Web services framework.

The down side is that your application has to understand SOAP. You’re trading off the need for writing simple servlets with the extra complexity (and performance hit) associated with a SOAP interface. The SOAP strategy makes good sense in a corporate environment where the server-side stuff is written in languages like Visual Basic, but it can be an annoyance if you’re writing in Java (or PHP, or any language that doesn’t have SOAP built in).

On the down side, TIBCO is clueless when it comes to dealing with clients who aren’t mega corporations, and this cluelessness is reflected in the pricing model. The product is free provided that your site is public-facing and you don’t charge for access, but the costs escalate fast if you’re doing anything else. If you’re using the product to build applications for your local intranet, the cost runs from US$499 (five concurrent users max) to $8,995 (100 concurrent users max).

TIBCO doesn’t even publish a price for fee-based public-facing Web sites—you have to negotiate a price with them. Frankly, I find this sort of draconian, hideously expensive pricing model abhorrent, and I suspect that unless TIBCO changes its tune, it will find itself without customers within a year or so as the open-source libraries improve in quality (or some other UI fad grabs everyone’s imagination). You can get the product (and see some screen shots) at www.tibco.com/software/business_optimization/rich_internet_applications.jsp.

One good alternative to General Interface is the Zimbra toolkit (www.zimbra.com). Zimbra’s actual product—essentially a Web-hosted version of Outlook—is written using the toolkit, and the “hosted” product demo (www.zimbra.com/products/hosted_demo.php) is an impressive example of a well-done, great-looking AJAX UI. The toolkit supports drag and drop, multiple skins and any widget you’re likely to need. The JavaScript is well-written, it works well, and it’s free.

On the significant down side, Zimbra has zero documentation, which will be a major obstacle unless you have a good JavaScript person on hand. The ramp-up time will not be insignificant. There’s no GUI layout tool, either, but I don’t use these sorts of tools very much myself—the tools usually create awful HTML, and I want my site to be maintainable.

Frankly, given the pain of dealing with TIBCO and the exorbitant cost of the product, I have to skip General Interface in my own work. If you have the resources, and need Visual Basic-style-mindless-programmer development, there is no real competition to General Interface. (The situation will obviously not stay that way as initiatives like Open AJAX come to fruition—Zimbra is an Open AJAX participant.)

On the other hand, if you have a good JavaScript developer on hand, Zimbra looks great and works well, and you can create your own documentation for it. You won’t have the drag-and-drop GUI, but you’ll also be out from under the corporate thumb.

Allen Holub is an architect, consultant and instructor in C/C++, Java and OO Design. Reach him at www.holub.com.
 


 
 
 
 
 
 
 
 
 
 
SUBSCRIBE TODAY!
 E-Newsletters:
  News on Mon/Thurs.
  Test & QA Report
  EclipseSource
 
 
JOB BOARD
 
PDF & PRINT EDITION
* Requires Resource Account!  LOGIN or SIGN UP

Download Current Issue!
ISSUE 8/15/2008 PDF

Need Back Issues?
DOWNLOAD HERE

Receive The Print Edition?
SUBSCRIBE HERE
 
REGISTER
 
GET NOTIFIED!
About all of the latest Resources
 
 
SD TIMES 100
It's time once again to
recognize the organizations
or individuals that have
demonstrated leadership in
their markets.