Rebecca also gives a detailed description of her first foray into Dojo coming from jQuery. [2]
Personally, I think Dojo's lack of good documentation/reference code, lack of 'marketing', and relative complexity keep it from becoming popular. It's much easier to get started with another library like jQuery because of all these factors. However, once you get over that initial steep learning curve, Dojo is great!
[1] http://www.quora.com/Rebecca-Murphey/answers/Dojo-JavaScript...
[2] http://rmurphey.com/blog/2009/11/12/dojo-confessions-or-how-...
edit: corrected name to Rebecca
Marketing is challenging for engineers. We tend to not go crazy over every small feature, but focus on the big stuff. That said, we're improving our approach.
Two points:
1. The tutorial shows using the CDN, then there's big warnings saying "don't do this in production". Give another demonstration of the "highly recommended" approach vs leaving people to piece that together themselves.
2. "we tend to not go crazy over every small feature". What's a small feature to you may just be something that 80 people have been waiting patiently for. While you can often judge what a 'big' feature is by your standards, dismissing many other things as 'small' probably misses a lot of people.
Its just not that easy to get started with and get a sane production build from dojo yet. Hope all of this will change by the time 2.0 is out.
As to why it's not more popular? Likely marketing. Dojo isn't sexy. It's been around for a very long time.
You'll notice that a lot of discussions around things like module loading reference Dojo as an inspiration.
http://w3techs.com/technologies/overview/javascript_library/...
Also, the comparison of FF/IE and Windows/Mac, the argument is flawed - the underdogs came out to fix problems with the status quo. Dojo does not provide significant benefit over jQuery or similar tools to warrant switching frameworks.
Dojo has plugins for localization and text loading that are needed for certain features. You would need similar capabilities in other AMD loaders for them to work. I believe it's simple enough to get most of Dojo working with RequireJS, or with Curl.
This is not correct at all. Compared to jquery, dojo is significantly better option for large projects. Dojo has a very rich unified set of widgets, jQuery has plugins, but they do not play well with each other. Each jQuery plugin is unique, with no standard way to extend them. I can extend any dojo class and in a very uniform fashion.
It is possible to do write good code in jQuery, but a vast majority of them are not, jQuery is like PHP, a haphazard mix of functions that do something. Dojo is like Django etc, with everything thought out from start to end, everything gels together.
Or at least that is my initial impression, would love to know why you believe the class system, the AMD modules, the rich widget library, storage framework, MVC framework, i18n, etc offered by dojo is no benefit to you?