These notes, however, concerned relatively minor details such as whether a popup box vanished when someone clicked outside it. The very fact that the notes are there is more of a testament to Microsoft’s commitment than an indication of its failures.
Atlas’ collection of widgets is a bit sparse, at least compared with the other offerings; there are no big editors and only a few animation tools. Much of the work is instead devoted to integrating the AJAX with the server, in this case the .Net Web services. The documentation and the examples in these cases are excellent.
There are a number of mechanisms for taking information from the database and formatting it at the client. All of them rely heavily on C# on the server, and all of them integrate well with the JavaScript on the client.
The code is clearly meant more as an extension of the .Net platform, not a tool for doing slick things on the client. If you’re heavily invested in .Net and you want to leverage the system’s Web service infrastructure, Atlas is a good way to add some life to your Web pages by consuming services there.
Yahoo AJAX Library
Yahoo’s AJAX library is not only a solid collection of functions but also a good illustration of how to publish open source software. The code for adding a core group of widgets to your
Web application comes in a zip file, and Yahoo offers a wide variety of examples and design suggestions. Many of the routines
come with six to 10 different examples, all with sample code and demonstration pages.
This approach is markedly different from the other packages because Yahoo is just as intent on pushing a clear design philosophy as it is on delivering a piece of code. This tactic is more important than it may seem because the general user still needs a great deal of education about how AJAX applications behave. The designers at Yahoo want to push a stable, consistent behavior for the AJAX widgets, and their very complete documentation encourages this.
![]() |
Yahoo does add some nice touches. The animation library, for instance, also interacts with some standard tools, such as a text scroll device that allows you to automate the behavior of some part of the HTML — say, a box filled with text. The Connection manager will automatically assemble all of the data from a form and put it into the right format for a GET or POST application.
Despite the lack of an editor, these interactions give Yahoo’s library a smoother feel, compared with the rough-and-tumble state of Open Rico or Zimbra. Whenever you dive into the code with Yahoo’s toolkit, you usually come away feeling that the company has spent a bit more time optimizing the functions and adding some real depth to the libraries.
Opening up the future
As these open source AJAX packages evolve, I think we’ll see more of a difference between the ones that are directly tied
to one corporation and the ones that remain outside the control of one particular company.
I expect that Google, Microsoft, and Yahoo will continue to exert tighter control and editorial guidance over their AJAX projects, compared with the neutral packages. This control will help people who like a bit more polish and better documentation, because I expect that the vendors will include the efforts of regular staffers.
Such generosity always comes with a price, although it may be small. Yahoo’s JavaScript libraries, for instance, will always be there to support Yahoo’s mapping business. Dojo’s libraries, on the other hand, can work with either Google Maps or Yahoo Maps.
The neutral packages, meanwhile, are bound to grow more varied as they attract more contributions. Some parts of Dojo are already ports from smaller open source efforts that were rewritten to use the core parts of the Dojo packages. I expect that more people will work to add their few lines of code to these projects, if only because it will make it easier for them to leverage the libraries with their own projects. The neutral packages will likely continue to be the ones that offer the most creative ideas and the cutest widgets at the quickest rates.
This schism, however, is just a prediction. Dojo is now supervised by a foundation with support from major corporations; perhaps it will start focusing its effort and polishing its documentation. And there is no reason why the bigger companies can’t start nurturing and soliciting more contributions to their packages.
Regardless of how they evolve, the best way to use all of these open source packages is to pick and choose the parts you need to assemble the Web application you want. For example, I eliminated Dojo’s editor from one of my projects when its text editor didn’t offer access to the data in the format that made my life easiest — so I switched.
It’s difficult to suggest one particular library as best or to make blanket statements about superiority because so much of the toolkits’ usefulness depends on your programming style and needs. I recommend taking a tour of each and even mixing and matching the libraries. After all, there are few practical reasons why you can’t use code from Atlas and Dojo on the same page.
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
Talkback
E-mail
Printer Friendly
Reprints











