December 14th was the 9th and final London Ajax User Group event for 2010. The topic was widgets, with talks about YUI and Dojo’s Dijit.

A quick aside: I started this group earlier this year with Piotr Zalewa of MooTools and JSFiddle fame as I wanted to meet more people in London given the amount of time I am here, and bring a bit of the JavaScript valley culture to London.


This event was interesting as I had lost my voice, so fortunately I wasn’t a scheduled speaker. We started off by announcing a pair of prizes:

  • SitePen Dojo Boost Support Plan
  • When released, winner’s choice of: Blackberry Playbook or iPad 2, sponsored by left over funds within the London Ajax group

Everyone in attendance received an entry, and all reasonably good questions received an additional ballot entry.


The first talk was delivered by Matt Parker on the topic of YUI. Matt started by talking about the difference between the two versions of currently in use, YUI2 and YUI3.

He showed off an example with a number of widgets from a product his company works on, and talked briefly about .

After a quick intro to YUI2, he moved on to YUI3 which has a much more efficient and modular coding style. YUI 3.2 has a short list of widgets: overlay, editor (no UI), scroll view, slider, tab view, with more coming in version 3.3: Charts, tree, autocomplete, datatable.

YUI3 makes it easy to pull in YUI2 code which is fortunate given that YUI3 is still a work in progress, as it was a complete rewrite from YUI2.

There’s a YUI community gallery on Github, and it’s easy to include widgets from that gallery:

YUI.use('gallery-treeviewlite', function(Y){});

Matt also showed off the Alloy UI from Liferay, which looks to be a very promising external widget project.

YUI3 has a significant focus on performance, with almost everything being modular and pluggable.

Other nice things in YUI3 include touch events, and an experimental project for using Node.js for server-side rendering of widgets.


Sam Foster of Dojo and SitePen then delivered a talk on Dijit.

Sam mentioned that the name Dijit represents many things: a project, namespace UI components, framework, and a guarantee (of quality).

Dojo has been around for 6 years and carries a lot of really hard earned, painful lessons. One major rewrite and significant incremental releases have occurred over this time. Sam distilled the most important Dojo APIs into one simple slide.

Dijit is themeable, accessible, internationalized, extensible, and production-ready. There’s an impressive theme tester, and Dijit is part of each major Dojo release.

There’s a newly launched Dijit-based Dojo API viewer that supports the current and several recent versions of Dojo.

Dijit provides CSS for themes, allows for instantiation of widgets through declarative markup (1.6 uses HTML5 data attributes instead of custom attributes) or JavaScript.

DojoX provides many additional widgets outside the scope of Dijit including grids, charts, image widgets, and much more.

Dijit contains many classes of widgets, including layout widgets, form widgets, and more.

Sam concluded by discussing the value of ui frameworks, Dijit precepts, and explaining what actually is a widget (HTML/CSS/JavaScript).


The talks were great, and the video and slides will soon be available.

If you’re in London, we hope to see you at a future London Ajax User Group event. We meet the second Tuesday of every month at 6:00pm, and occasionally have an all-day event on a weekend.

Leave a Reply