The combination of CSS and jQuery allows for powerful DOM selection and traversal. By employing sizzlin' CSS selectors, and adding some more, jQuery allows us to target elements in a document based not only on parent, child, and sibling relationships, but on attributes, values, states, and relations the target elements do or do not have. You don't even need to have access to the site's HTML because there is no need to add classes and id's. When you know and understand the power of selectors, you can pinpoint any element on the page. Bonus is, this helps you with both jQuery and CSS. In this workshop we'll cover all the selectors, basic to advanced with emphasis on the advanced, including selectors unique to jQuery and those new to CSS3. It's double-duty: one workshop, two skillz..

JavaScript is a very powerful and flexible language that allows you to write very elegant programs. However, it has some parts of it that are easily breakable and no matter what you are writing, new jQuery plugin or nice interface for your web application, it is very important to not to ship broken code. Fortunately, there are tools that were designed to catch potential problems in your code and report about them before the deployment of your code.

This talk is about integrating such tools into your daily development workflow. It will give you basic idea of problems that JavaScript has and approaches you can take to prevent those problems. It will also cover JSHint — a community-driven code quality tool — and how we use it at Disqus to make sure that we don't ship broken code to 400m+ visitors.

Come celebrate the official release of the jQuery.Popcorn plugin! Learn how to create interactive, immersive HTML5 Video experiences by bringing the power of Popcorn.js and Popcorn Plugins to your jQuery applications. Popcorn.js, developed by Rick Waldron of Bocoup on behalf of the Mozilla Foundation, is a JavaScript platform for delivering content synchronized to the playback of HTML5 Video. http://popcornjs.org/

Aloha editor was created on January 18th 2010, with the goal to revolutionize the WYSIWYG editor industry. We’ve built a strong community and have reached great success. Being the only true HTML5 ContentEditable solution allowing us to provide inline editing has put us far ahead the competition. Though adoption has been slow. The marriage with ExtJS is the main criticism fueling the slow adoption.

In February we held our Aloha Editor DevCon in Vienna and were blessed with the opportunity to work with Richard D. Worth, Scott Gonzalez and Jörn Zaefferer from the jQuery UI team. The Aloha Editor spirit is all about making the web exciting and having fun doing it. Through intense discussions and over several days we were persuaded enough to make the move to jQuery UI.

Development is now underway and this talk will cover the switch to jQuery UI, the affairs, the ups and downs, the heartbreaks and how it all happened. We’ll cover the essential networking and recruiting of the right people, the abstraction of the UI framework, and working with jQuery UI to create widgets. It’s more than just two frameworks working together intimately, it’s a love affair fueled with passion.

So to learn the why, the how, the what, and the what ifs of one of the biggest intimate encounters of frameworks in the wysiwyg world, then this is the talk.

"How do I build larger applications using jQuery?" It's a question that starts to creep into the minds of virtually every jQuery developer after building one or two non-trivial web applications. There are many good answers to this question, and even some talks at this conference that describe ways to use code organization and other techniques to help scale applications.

Perhaps he most important structural issue--one that virtually every one of these solutions tackles in one way or another--is the fact that many jQuery applications use the DOM to store facts instead of simply visual display. This means that changing visual display often has all sorts of implicit dependencies on other parts of the page, and not clean structural way to describe these dependencies.

In this talk, Yehuda will talk about how this problem manifests itself in real applications, and what techniques you can use to mitigate the problem. He learned many of these techniques by working on SproutCore, so he will use SproutCore's system as a reference where appropriate.