I use JavaServer Faces (JSF) professionally to develop a web application. The development experience for me was rough initially and the learning curve was quite steep. Over time I have learned that the majority of this difficulty had to do with the complexity and incompatibility of our customizations to JSF rather than JSF itself. Now I know how our customizations work and how valuable they are. This problem exists regardless of framework and indicates a need for restraint in the tendency to customize.
Time and again I found myself searching for alternatives to JSF for future consideration. This led me originally to The Dojo Toolkit which was almost 180° different in philosophy to JSF: more a frustrated rebellion against JSF than a really productive exercise.
Clearly further education on The Dojo Toolkit and restraint in the desire to customize it would help.
Dojo has improved significantly since 0.4 and since then a couple of books have been released. I have read part of the Pragmatic Programmers book which I purchased the instant I saw it in beta. However, I found that it does not satisfy my goals and I quickly bored of it since it was not clear how to follow the examples. The Pragmatic Programmers Dojo book tried to feed me an elephant in a single bite and I choked.
I want a Dijit book, not a Dojo book. My ideal Dijit book would only introduce other Dojo capabilities insofar as they facilitate effective user interface development. Many GUI framework books I have read take this approach to minimize unnecessary exposure to the details of the underlying framework or programming language. The screencasts for Ruby on Rails are a great example of this approach. I was able to effectively develop experimental applications in Rails with ease without every laying eyes on a Ruby tutorial. I want this for Dijit.
In the mean time I will continue to expand my understanding of JSF. I need that for my career and for the sake of my colleagues, both of which I enjoy and value deeply.