OpenAjax is Officially Open Now
September 20, 2006 – 9:08 am by coachwei | Category WebDev |I am excited that OpenAjax Alliance is officially open now. Over the last months, we have worked very hard and have made some incredible progress, depsite the heterogeneous nature of many different members representing different viewpoints. One person that definitely deserves credit for getting us to where we are today is Jon Ferraiolo - In fact, I could not think of a second person better than Jon in help driving alliance forward, and I congrat David Boloker(IBM) for making such an excellent hire!
Please check out our website at http://www.openajax.org.
What we achieved in the last few months - with lots of conference calls, emails and late night work from many different people:
1. Marketing: we designed the logo for the organization. Dylan Schiemann (Dojo Toolkit) played an important role here. We also finished a white paper trying to clarify the Ajax landscape and terminology from a technology point of view. Chris Erickson (ICESoft) did a good job taking a first stab at it, I was honored to be able to contribute some thoughts and graphics from some of my previous work and Jon did a brilliant job of putting many different things together. The white paper is here. We outlined two different architectures: client side transformation and server side transformation, different implementation options such as single DOM and dual DOM and two different programming models (programmatic vs declarative). By the way, Apache XAP is a client side architecture, uses a dual DOM approach and advocates a declarative programming model (though there is a programmatic API). I personally believe this is the best option overal speaking (server independence, higher server scalability, an XML DOM interface on the client side enable easier and simplier way of client side state manipulation in a browser independent fashion, etc). What do you think of the white paper? What do you think of the Apache XAP approach?
One of the things that I personally do not agree with the white paper is the term “server-side Ajax engine”. In my oppinion, Ajax engine is about client side stuff and Ajax itself is a client side beast. Calling server side code as an “Ajax engine” just confuses the market and terminology. Some other people have stronger oppinions on this issue and believe it is OK to have a “server-side Ajax engine”, which I did not feel worthwhile arguing further. What do you think on this issue?
2. Interoperabilty and declarative markup: Historically, the usage of Ajax (JavaScript and DHTML) was in a much smaller scale that JavaScript code and Ajax toolkits rarely have to deal with each other in the same page. However, with the rise of Web 2.0, Ajax is playing an increasingly important role for enterprise application development. It is highly likely and beneficial that the same application may need to use several Ajax toolkits or code written by many different developers, such as mashups. In this new context, the question of whether two different pieces of Ajax code can “peacefully” co-exist becomes a really issue.
There are over 180 Ajax toolkits today. The reality is that a lot of them do not have consideration for “compatibility” or “interoperability”. For example, a lot of toolkits as well as a lot of Ajax developers overload the “onload” event handler for the HTML page to handle initialization without considering that the “onload” event may be needed by another Ajax toolkit or a different developer. So this is a real problem and we must figure out ways to solve it in order for Ajax to be really adopted in enterprises.
What is the solution? Corporations like Google can play a role for sure, given their big influence in general. But I don’t think it is sufficient. Google has done a good job in some of the code they produced, but it didn’t prevent other Ajax toolkits and developers breaking the “compatibility”.
OpenAjax Alliance is formed to address such kind of issues for the industry. The result will include guidelines, OpenAjax compliance requirements, as well as code that we encourage people to use that would give them interoperability. OpenAjax Alliance itself includes many of the leading Ajax toolkits that will support OpenAjax interoperability. Many members made significant contribution to solving this challenge.
One of the milestones is OpenAjax Hub, a lightweight Javascript library that deals with the interoperability issue. Jon (IBM), James Margaris (Nexaweb), Alex Russel (Dojo) etc. made a lot of contribution here, and a lot of other people actively participated and contributed (such as David Frankel (SAP) etc). Though the initial code base is small (don't you think it is great to have small footprint code?), it is an important step that solves some real problems as well as demonstrated that the members can work well together to produce real results.
Tony Baer's latest blog “Herding Cats” presented an interesting viewpoint on the potential challenges that faces interoperability and OpenAjax Alliance itself. I must admit that Tony made some exellent points here. From the perspective of interoperatibility, we have yet to think of the impact of mashups. Further, from the perspective of OpenAjax Alliance, some of the things that Tony pointed out “developing standards looks akin to herding cats” are definitely the things that we have to pay attention to.
I look forward to the October face-to-face meeting and really bring Ajax to the next step…
Wednesday, September 20, 2006 update: sorry that I made a mistake earlier. The official URL for OpenAjax is http://www.openajax.org. It is corrected now.
3 Responses to “OpenAjax is Officially Open Now”
This is an impressive piece of software. Any chance why its only IE? I'm curious to understand why this was the case. Thanks for putting this together
By Anonymous on Sep 20, 2006
The offical URL for the Open Ajax Alliance is openajax.ORG
I have set up a redirect on OpenAjax.Com to point to the correct site, but please update the story.
By Ric on Sep 20, 2006
OpenAjax is a good idea. Half of the so-called Ajax code is written to work around Browser quirks. Good to see Mozilla and Opera sitting together to sort out issues. But without Microsoft - which owns 80% of the Browser market - participating, *really* openAjax is a pipedream. And it's not just MS, Apple (Safari), KDE foundation (Konqueror) etc., aren't on board too.
Of course, sharing Browser-wart workarounds across frameworks will help. That is if for e.g. Dojo and Prototype/ Scriptaculous can share common code. That is if you can get around the Architects ego and the Not-Built-Here syndrome. Also there's the issue of payload format - JSON vs. XML. Both have valid uses - JSON being light-weight, XML being more secure. Without standaridizing on the wire-format, standardization isn't realistic.
Hope AJAX standard will be kept simple, and not turned into heavy-weight SOAP-over-XMLHttpObject monstrosity . That is if you can keep IBM form proposing stuff like AJAX-Security, AJAX-Transactions, AJAX-Naming etc., the way they're doing with WS-*
By Vivek on Oct 5, 2006