Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ


Choose your language

InfoQ Homepage News Alex Russell on Dojo 0.4

Alex Russell on Dojo 0.4

The Dojo Foundation just released version 0.4 of their JavaScript toolkit with key improvements being accessibility, a 2D vector graphics API, improved internationalization support, and inline API documentation. InfoQ sat down with Alex Russell, project lead of the Dojo Toolkit to discuss the release.  The first question was how the key features in Dojo 0.4 came about.  Russell responded:

The biggest chunks of new work in 0.4.0 revolve around some of the major projects we started early in the year, namely the new API doc tool (, the dojo.gfx system, and dojo.i18n and dojo.a11y. The widget system saw continued work, new widgets, and serious attention to details in many areas. Significant work was done on the new Editor to give it a working plugin system.

Russel went on to describe how the community came together for this release, including work from vendors, the Summer of Code, and individual contributors.

The conversation shifted to the future of Dojo. The Dojo team is already working on the roadmap for 0.5. Russell detailed the key improvement coming soon:

An amazing amount of time has been spent already on the data binding infrastructure that will probably first see a release in 0.5 or 0.6. It's going to have widespread impacts through the entire widget system and will hopefully make hooking Dojo up to external services easier and faster.

Beyond that, I think we're going to continue the constant refactoring that has led to better, more expressive APIs over time. I don't expect a lot of quantum leaps from where we are, but instead a steady stream of constant improvement, polish, and documentation.

The conversation moved on to how the architecture of Dojo has changed with the new release. Russell described the biggest change being "namespaces":

The biggest core change has been the introduction of "namespaces". These are a unified way of mapping prefixes, like "dojo." to a resource or location, say "dojo/src/". The namespace system now allows developers to ease the burden on widget users, more easily plug into a central name/location mapping for both modules and widgets, and integrates centrally into the build system. It's a huge improvement, and thanks to IBM and the TurboAjax Group, it's finally a reality and it's backwards compatible.

He then was asked what other tools are on his radar in the Ajax space.

Testing and development tools are huge for us. Selenium and HostedQA are on our short-term radar as obvious improvements to our automated command-line unit testing. IDE integration is starting to happen, with the Eclipse ATF and IntelliJ IDEA already including some Dojo hinting and integration. I'm not (yet) an IDE user, but the IDEA stuff I've seen might just wean me off of my beloved vim. We'll see.

As for other toolkits, I think it's gonna be interesting to see where MochiKit, JQuery, and YUI go in the next 6 months. Also, with the browsers starting to iterate again, I think we're going to see continued improvement in debugging tools, but it's too early to say where that's gonna go. Should Joe Hewitt really land profiling support in the next version of Firebug, other tools might find themselves endangered species. I really have no idea how the IE tool developers can hope to keep up with him. He's a debugging army of one.

Other than that, I'm really keeping an eye on where mobile browsers go next. It's not strictly Ajax related, as the real opportunities for invention all revolve around those browsers doing better at getting access to the kinds of hardware that desktop systems just don't have (microphone, speaker, camera, location, etc.).

Lastly, Russell wanted to thank everyone who helped make the 0.4 release happen. He thinks that with this release there is finally some "headroom" back in the webapp developer's toolbox and he's looking forward to seeing how the new functionality is leveraged.

Rate this Article