[OpenAjaxIDE] eWeek article on OpenAjax IDE initiatives

Jon Ferraiolo jferrai at us.ibm.com
Sun Sep 7 12:45:24 PDT 2008

Darryl Taft of eWeek attended my talk at Rich Web Experience and wrote the
following article on our IDE initiatives:


Overall, it is a great article, but there are a couple of things that I
would have preferred had been worded differently.

I tried (via 3 separate emails!) to get him to rephrase the paragraph where
he quotes me as saying "follow the lead of the leading AJAX IDE in the
industry: and that is Aptana's. " and to qualify that to refer to Aptana's
leadership in defining API metadata, but the article went out without my
requested changes. I am very sorry if other vendors are unhappy about how
this quote came out.

Also, the comment that reads "while Microsoft has taken a rap for not
participating or playing well in some standardization and open-source
efforts" is Darryl's contention and was not based on any comments that I
made during my talk. (I probably should have sent emails on that one, also,
but only realized that now. Sorry, Bertrand.)



OpenAjax Alliance Pushes AJAX IDE Interoperability
By Darryl K. Taft.

 OpenAjax Alliance Pushes AJAX IDE Interoperability                         
 ( Page 1 of 4 )                                                            
 At the Rich Web Experience conference, the OpenAjax Alliance promotes      
 OpenAjax Metadata, a specification to facilitate interoperability across   
 AJAX IDEs. Another version of the OpenAjax Metadata specification supports 
 widget interoperability and security.                                      
 VIENNA, Va.—The OpenAjax Alliance is working to address interoperability   
 issues among development environments for AJAX as well as to facilitate    
 the creation of secure mashups.                                            
 At the Rich Web Experience conference here on Sept. 4, Jon Ferraiolo, an   
 IBM engineer and director of the OpenAjax Alliance, a consortium of        
 vendors and organizations working to promote AJAX interoperability, said   
 the group has published draft specifications for ways to make AJAX IDEs    
 (integrated development environments) more interoperable, to secure the    
 creation of mashups and to make widgets more interoperable for use in      
 Ferraiolo said the capabilities in AJAX IDEs—such as code assist, debug    
 and visual layout—ought to be interoperable across the different IDE       
 platforms, but as each AJAX tool kit documents its APIs and widgets in its 
 own way, that has been a problem. So the OpenAjax Alliance is working to   
 overcome that problem with a new specification known as OpenAjax Metadata  
 for AJAX Libraries, which delivers industry-standard XML for JavaScript    
 APIs and user interface controls.                                          
 It should be possible for there to be intelligent code assist for APIs     
 across different AJAX libraries, and visual design should be possible      
 using widgets from AJAX libraries, Ferraiolo said. The OpenAjax Alliance   
 specifications will help get to that point, he said.                       
 Aptana is leading the OpenAjax Alliance's IDE Working Group. Ferraiolo     
 said the group wanted to follow the lead of the leading AJAX IDE in the    
 industry and that is Aptana's.                                             
 Standards will improve industry efficiency and unleash innovation,         
 Ferraiolo said. So in that regard, AJAX libraries can produce one format,  
 OAM (OpenAjax Metadata), for their APIs, and these libraries will then be  
 compatible with many IDEs, he said. If the library uses JSDoc, then        
 autogeneration of OpenAjax Metadata is possible. "We are investigating     
 autogeneration for other inline documentation formats, such as what Dojo   
 uses," Ferraiolo said. "AJAX IDEs can consume one format, OAM. That IDE    
 will now support dozens of AJAX libraries. By unifying the industry around 
 a single XML file, [this makes it so that] IDEs can now innovate and       
 compete in other areas."                                                   
 The OpenAjax Alliance IDE Working Group has a number of participants, but  
 the core group that shows up on the weekly calls includes folks from       
 Aptana, folks from Adobe's Dreamweaver group and folks from Microsoft's    
 Visual Studio team, Ferraiolo said.                                        
 And while Microsoft has taken a rap for not participating or playing well  
 in some standardization and open-source efforts, Ferraiolo said the        
 company is working to make Visual Studio support the OAM format. Other     
 organizations with participants in the working group include the Eclipse   
 Foundation, Sun Microsystems, TIBCO and OpenLink Software.                 
 Aptana has contributed much to the effort, including sharing some of its   
 extensive experience with the ScriptDoc.org project for annotating         
 JavaScript in a way that enables code assist and code completion style     
 features in Aptana Studio, the company's open-source IDE for Web 2.0 apps  
 that use AJAX.                                                             
 "Microsoft has been a strong, active participant, as has Adobe, IBM,       
 Eclipse, Sun, OpenLink and others," said Kevin Hakman, chairman of the IDE 
 Working Group and director of evangelism at Aptana. "All have influenced   
 the specification offering insights from their respective IDEs, user       
 communities and code annotation conventions. Not to diminish others who    
 have contributed significantly, but Bertrand Le Roy of Microsoft has been  
 a consistent core contributor to this process whose input has been very    
 insightful and formative."                                                 

There is a draft of the OpenAjax Metadata specification that is now in the
implementation phase, Ferraiolo said.

"Our open-source mashup tool supports the widget format, but not APIs at
this point," Ferraiolo said. "Version 0.1 of JSDoc to OpenAjax Metadata is
available. We have not yet started on work for other inline documentation
formats, [such as] Dojo. And we have not yet started on Aptana to/from
OpenAjax transcoders."

"OpenAjax Metadata is all about making it easier to use JavaScript
libraries and incorporate Ajax widgets when creating Web pages, Web
applications and mashups," Hakman said. "The OpenAjax Metadata
specification provides a way to describe JavaScript objects in a standard
way that developers can easily produce and IDEs and mashup environments can
consume. The metadata format can describe full JavaScript libraries like
Dojo, for example, or single AJAX components like a YUI [Yahoo User
Interface] Tree Control, or full-featured mashable AJAX gadgets like Google
Maps or even just a plain old JavaScript function too. It works at all

To be clear, there are two primary specifications that share a common set
of descriptors, Hakman said. One is the API specification for describing
the APIs of JavaScript objects. This was largely based on ScriptDoc with
strong input from JSDoc and Microsoft's conventions as well, he said. The
API metadata is useful to developers writing application code. There also
is a markup specification that is largely based on Adobe Dreamweaver's
support and the common Web developer practice of inserting markup and
changing parameters in that markup. So in addition to some JavaScript, you
also get the chunk of HTML you need to include the widget or gadget in your
page, Hakman said.

"The spec contemplates an XML file with transformer utilities to go between
JSON [JavaScript Object Notation] and this XML for those that prefer JSON,"
Hakman said. "In addition, transformers for JSDoc and ScriptDoc are being
created by participants and will likely be shared as open-source code for
the community to use."
Widgets used to create mashups tend not to be interoperable and also to be
potential security risks, in that third-party widgets could be malicious,
Ferraiolo said. Widget developers usually have to build different versions
of their widgets to work with different containers. And on the security
front, there is no comprehensive, standards-based approach to widget

So the OpenAjax Alliance is working to relieve this situation with its
OpenAjax Hub technology and OpenAjax Metadata for Widgets specification.
The OpenAjax Hub 1.1 provides a framework for loading and isolating widgets
and secure message management, Ferraiolo said. Then OpenAjax Metadata for
Widgets defines an industry-standard widget wrapper format. Then
open-source transcoders convert popular existing proprietary gadget formats
into OpenAjax Metadata, and the OpenAjax Alliance open-source mini-mashup
application shows how to use all of these technologies.

The OpenAjax Hub is a small bit of standard JavaScript that enables
multiple AJAX run-times to work together, and Version 1.1 provides for
widget security. There is a draft OpenAjax Hub 1.1 specification that
should be finalized by the end of 2008, Ferraiolo said.

OpenAjax Metadata for Widgets addresses the two core shortcomings of
widgets for mashup use. In terms of widget interoperability, OpenAjax
Metadata for Widgets defines industry-standard XML for mashup widgets and
is "very close to Google Gadgets," Ferraiolo said. OpenAjax Metadata for
Widgets is designed to work with OpenAjax Hub 1.1, which provides a secure
mashup run-time.

"Google Gadgets is the gorilla of the Web widget space, and we want to
match Google Gadgets wherever possible," Ferraiolo said.
The OpenAjax Metadata for Widgets specification is at the first draft stage
and should be completed and approved by the end of 2008, Ferraiolo said.

Much of the progress for the OpenAjax specifications will rely on the
outcome of the OpenAjax InteropFest, where the organization will test
OpenAjax Metadata interoperability across multiple vendors, and also test
OpenAjax Hub 1.1 for reliability, performance and suitability.

"As we head into the fall, the goal is that each of the tool vendors in the
IDE working group will demonstrate via the OAA InteropFest how they can
consume these description files for a variety of widgets from various
sources like Google, Yahoo, Dojo, jQuery, EXT JS, Prototype, Scriptaculous,
Mootools … and have the things described be easy to use in the context of
the tool," Hakman said. "With this group of tool vendors behind the
specification, we'd hope that developers creating libraries and widgets
will have strong incentive to produce the description files or annotate
their code with ScriptDoc/JSDoc such that their libraries and widgets can
benefit from the tooling of many leading companies."

Also, "We see mobile AJAX as the next big frontier," Ferraiolo said. "We've
been trying to advance the ability for AJAX to be successful for mobile

The OpenAjax Alliance is working to promote mobile device APIs, including
open-source JavaScript, to access GPS, camera, address book, SMS (Short
Message Service) and more, Ferraiolo said. The effort targets both existing
proprietary, system-dependent APIs (via plug-ins) and emerging industry
standards, he said. And the organization is collaborating with the OMTP
(Open Mobile Terminal Platform) and tracking work being done by the World
Wide Web Consortium in areas like geolocation, he said..

Ferraiolo mentioned the OpenAjax Alliance feature wish list, where the
group polled 222 participants and came up with a list of top requests. The
top feature requests include: two-dimensional graphics, security, improved
low-level DOM (Document Object Model) hooks for visual layout, DOM
performance, rich text editing, server push (Comet), video and audio,
Ferraiolo said.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://openajax.org/pipermail/ide/attachments/20080907/54c951df/attachment-0001.html 

More information about the IDE mailing list