It’s a new week, and time for another YUI: Open Hours!
This week, we’ll be joined by the inimitable Dav Glass, author of (among other things) YUI’s Rich Text Editor and Drag and Drop utility, and the primary architect behind yuilibrary.com and the Gallery itself. He’ll be discussing the YUI 3 Gallery project — where it’s going, how to contribute — and answer any questions about it, about the site, or really about anything else while we have him on the line.
After that, we’ll jump into our main event, which will be a “Gallery widget sampler”. We have a number of module authors joining us this week, including
They’ll introduce their module, give an example or two, go over their API, and discuss their experience creating it. Besides just being a nice introduction to additional components available to YUI 3 users, it should provide a good platform to talk about widget API best practices and help give a sense of some of the decisions that are made during widget creation.
Thanks again to Caridy PatiƱo for joining us last week and reviewing his Accordion Node plugin and Dispatcher modules. We’ll have more topics in the future about creating Node plugins and the reasons why the plugin approach or the widget approach might be a better fit for your needs. And thanks to Matt Sweeney (author of YUI’s Node class and selector engine) for dropping in as a surprise guest as well.
The time will be the same as before, 10am – 12pm PDT and the connection details are also the same:
And as always, you can keep up to date with the upcoming schedule and topics by following @yuilibrary on Twitter or subscribing to the YUI Event Calendar.
Hope to see you there!
May 21, 2010 at 1:30 pm
Definitely a fast paced Open Hours this week. Thanks a bunch to Iliyan, Andrew, Matt, and Jacob for showing off their work — especially in light of how little time each had to do so.
It was a great introduction to some nice modules, and a good illustration of the many routes component developers have at their disposal to implement their ideas. Here are some of the takeaways from this week:
Tip of the day:
Use
Y.on( domEvent, callback, selector )if the element(s) matching the selector might not be available in the DOM yet. Y.on will poll the DOM until they show up (or a timeout is reached). See the walk through explanation.From Dav’s chat
If you have a YUI 3 solution that you want to share, put it in the Gallery. If you want to make your module available to every YUI 3 implementation, request to push it to the CDN. If you want to sell your work or you can’t license it with YUI’s license, there’s still value is making it searchable on the Gallery. But really you should be pushing stuff to the CDN.
Best practices
* If you want to create a widget that manages child widgets or objects, check out the WidgetParent and WidgetChild class extensions. Consistency across modules is good.
* Expose your objects/classes. If you want to make your module’s objects easy to use by adding convenience methods to handle the instantiation and configuration, expose the class constructors and other objects publicly, and add a static method that wraps the logic around those public objects. It makes run time tweaking and extension possible.
Note on migrating from YUI 2 to YUI 3
If you’re thinking about migrating from YUI 2 to YUI 3, creating a Gallery module is a great way to get your feet wet with the APIs, and give something back to the community while you are doing your research.
And a final note: We were running a test to record this weeks Open Hours for those of you that might like to participate, but can’t manage the time slot. If it works out, we’ll look into the best way to distribute the recordings going forward. Stop into the #yui IRC channel on freenode.org if you have suggestions.
The next Open Hours will be June 4th. The topic will be announced here on YUIBlog, but will likely show up in the YUI Event calendar beforehand. Stay tuned!
June 3, 2010 at 11:46 am
I’m going to have delay this week’s Open Hours until probably June 18th. I may be able to get something going before that, and I’ll update here and on the YUI Event calendar if so.