Hello. I've been playing around with yui-ext, and it looks very nice. I'm a little confused about the areas that seem to overlap with YUI. In general they seem to replace rather than extend their YUI counterparts.
For example:
- BasicDialog and Dialog - both handle some similar tasks, e.g. creating an IFRAME behind the dialog
- Element and YAHOO.util.DOM
- EventObject and YAHOO.util.Event
- DatePicker and YAHOO.widget.Calendar
It might help to have a page in the documentation that describes where you use one instead of the other.
Some of the overlap is ocurring b/c as yui-ext has grown to provide functionality that didn't exist in yui (e.g. DOM, event), Yahoo! has updated their code (in some cases borrowing from things created here).
I can't say that there's any hard/fast rule b/c as time goes by both libraries are continuing to grow. With regard to DatePicker vs widget.Calendar, DatePicker was built to overcome shortcomings and extend what Yahoo's widget did. Since then, Yahoo has added more stuff to their calendar, blurring the lines a little more.
As you get more familar with the code, you'll probably be able to make decisions as to which pieces you want to use from which library. Personally, since I started using yui-ext before Yahoo added things like event and dialog, I don't see a need to use their's. This is partly b/c of the features involved and also the fact that library dev for yui-ext seems to move at much faster clip and is ahead of similar components from Yahoo.
To add to tryanDLS's comment, you'll see in yui-ext that the Element class forms the base of almost everything in yui-ext and provides a much more OO interface to everything. In YUI, things can get pretty verbose and procedural, whereas yui-ext classes are loaded with tons of helper methods that generally make things much easier and more concise. The best example is comparing what it takes to do complex animations in YUI with the Actor stuff that Jack has written (see http://www.jackslocum.com/blog/2006/...-ui-made-easy/). There's really no comparison in deciding which is a more productive way of working with the js code.
Regarding overlap, I think Jack still uses a lot of the base Yahoo stuff (YAHOO, Dom, Event and the utilities like Animation) as his foundation internally, but honestly I don't think he uses all that much else. And like tryan said, the more he adds and extends, the less it really matters to you and me. I pretty much just include the YUI stuff I need at the top, and then start coding in yui-ext without looking back. Using Jack's helper methods, you can pretty much do anything you need without ever directly calling a YUI class, just easier.
Since YUI is licensed with the BSD software license, anyone is free to use it or extend it however they wish. Even if someone wanted to lock it down, the license would not legally allow that, so I think Jack's safe.
No, he works on yui-ext full-time which is why it's so important that those of us who are deriving value from his work should be quick to make donations.