Get Lanyrd on your mobile (iPhone, Android and more) - check it out here

jQuery Conference: SF 2011 schedule

Saturday 16th April 2011

  • jQuery Keynote

    by John Resig

    The state of the jQuery project in 2011. Covers details regarding jQuery core, jQuery mobile, and the project as a whole.

    At 10:15am to 11:15am, Saturday 16th April

  • jQuery Mobile

    by Scott Jehl and Todd Parker

    jQuery Mobile Team Design and Dev leads Todd Parker and Scott Jehl will discuss the challenges and philosophy of the jQuery Mobile Framework, and how to use it to create websites and apps that provide a cohesive, touch-optimized experience in the latest mobile browsers while maintaining universal accessibility in older and under-featured browsers, and for users of assistive technology. Todd and Scott will also bring us up to speed with recent developments in the jQuery Mobile framework and its roadmap for future releases and features.

    At 11:30am to 12:30pm, Saturday 16th April

  • Selectors in the Age of jQuery

    by Estelle Weyl

    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..

    At 11:30am to 12:30pm, Saturday 16th April

    Coverage slide deck

  • Introduction to jQuery UI

    by Andrew Wirick

    jQuery UI provides abstractions for low-level interaction and animation, advanced effects and high-level themeable widgets. We'll discuss basic usage of these effects, interactions, and widgets and get a feel for the similarities across the API. We'll touch on what makes the API pattern powerful and how you can use it to create and test your own abstractions using the UI widget factory.

    At 1:30pm to 2:15pm, Saturday 16th April

    Coverage slide deck

  • Mobile Performance

    by Steve Souders

    Before Firebug existed it was hard to know what the browser was doing with your web page. Firebug (and more recent tools like dynaTrace Ajax Edition, Speed Tracer, Web Inspector, and HttpWatch) let us see how HTTP, JavaScript, CSS, the DOM, and rendering take up time as the user waits for the page to load. This visibility into browser performance has generated many web performance best practices as captured in tools like YSlow and Page Speed. The performance evolution that took place on the desktop (tools and research resulting in best practices) is starting in mobile. Right now we’re at step 1: gaining visibility into what’s happening in the mobile browser. Without this visibility, mobile web developers are flying blind. In this session Steve Souders shows how to analyze mobile performance across all the popular devices. He demonstrates analysis tools, services for accessing devices remotely, and quirks he’s discovered that show mobile performance is full of surprises.

    At 1:30pm to 2:15pm, Saturday 16th April

  • Introduction to jQuery Mobile

    by Raymond Camden

    This talk would be a hands on introduction to jQuery Mobile. I'd discuss how to begin working with the framework, it's way of doing things, and how to build common UI items.

    At 2:30pm to 3:15pm, Saturday 16th April

  • Progressive Enhancement 2.0 - Because the Web isn't Print

    by Nicholas C. Zakas

    In the beginning, progressive enhancement was simple: HTML layered with CSS layered with JavaScript. That worked fine when there were two browsers, but in today's world of multiple devices and multiple browsers, it's time for a progressive enhancement reboot. At the core is the understanding that the web is not print - the same rules don't apply. As developers and consumers we've been fooled into thinking about print paradigms for too long. In this talk, you'll learn just how different the web is and how the evolution of progressive enhancement can lead to better user experiences as well as happier developers and users.

    At 2:30pm to 3:15pm, Saturday 16th April

    Coverage slide deck

  • Integrating Code Quality tools into your jQuery Development Workflow

    by Anton Kovalyov

    (Or How I became Crockford's Sworn Enemy)

    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.

    At 3:30pm to 4:00pm, Saturday 16th April

  • jQuery + Popcorn.js = Interactive, Immersive HTML5 Video Experiences

    by Rick Waldron

    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/

    At 3:30pm to 4:00pm, Saturday 16th April

    Coverage slide deck

  • Aloha Editor; Leaving ExtJS for jQuery UI

    by Haymo Meran

    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.

    At 4:15pm to 5:00pm, Saturday 16th April

    Coverage slide deck

  • Getting Truth Out of the DOM

    by Yehuda Katz

    "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.

    At 4:15pm to 5:00pm, Saturday 16th April

  • Deferreds - Putting Laziness to Work

    by Dan Heberden

    About four nested callback functions later, you realize that something needs to change. You wanted this site's code to be organized, maintainable, testable and DRY right? Wouldn't it be nice if your callbacks could run when any function was complete, even asynchronous ones? And how about if you could chain that callback, for example, to the $.ajax() call you just made? Or build your own and decide when to fire any bound callbacks? Meet $.Deferred, the feature that satisfies all of these needs. Think of it like callbacks on steroids. Plus, it's already used by $.ajax() for asynchronous awesomeness. We'll cover the basics of creating and using Deferreds and bring those principles into application architecture. You'll learn great ways to integrate Deferreds into your site's code and reap some sweet benefits. In short, you'll learn how to separate components of your application amongst synchronous and asynchronous behaviors. Saving time and reducing headaches: included.

    At 5:15pm to 6:00pm, Saturday 16th April

  • Prototyping and Unit Testing with Mockjax & mockJSON

    by Elijah Manor

    The front-end and back-end of your application inevitably progress at different speeds. In order for each layer to develop independently it is optimal if the front-end piece can work regardless of the back-end, which is where the Mockjax plugin comes in. Mockjax can intercept and simulate ajax requests made with jQuery with minimal effort and impact to your code. Another tool that works well with Mockjax is mockJSON which provides a random data templating feature. This can be very handy when you want to mock a JSON response from a AJAX call, but instead of manually building the response you can build a template to do it for you.

    As you are developing, Mockjax can also be used to help Unit Test your front-end code. You can setup a static mock responses to your requests and then Unit Test your Ajax success and fail event handlers.

    At 5:15pm to 6:00pm, Saturday 16th April

    Coverage slide deck

Sunday 17th April 2011

  • jQuery UI Keynote

    by Richard D. Worth

    The state of jQuery UI. What’s new in the coming 1.9 release, including greater extensibility, new widgets and streamlined APIs for existing widgets. What’s planned for 2.0 and beyond. Also, an update on the new jQuery UI Grid project.

    At 10:15am to 11:00am, Sunday 17th April

    Coverage video

  • Filling the HTML5 & CSS3 Gaps with Polyfills and Shims

    by Rey Bango

    Everyone wants to jump into HTML5 but how do you use the cool features of this new specification while ensuring older browsers render your web pages as expected? This is where polyfills and shims come in.

    In the session, you’ll learn how to use specially crafted JavaScript and CSS code that emulate HTML5 features so that you can take advantage of HTML5 today without breaking your sites in older browsers.”

    At 11:15am to 12:00pm, Sunday 17th April

  • IM IN UR AJAX, PROCESSIN UR DATA

    by Julian Aubourg

    In jQuery 1.5, the ajax method, responsible for all ajax requests issued using the library, has been completely rewritten. Since 1.5 has been released, Deferreds and how they're used internally by ajax has seen a lot of press. Less known are the three ajax extension points introduced with the rewrite: - prefilters, - converters, - and, transports. In this talk, I'll present those extension points, how they can be used and, also, how flexible ajax can get when prefilters, converters and transports are used together.

    At 11:15am to 12:00pm, Sunday 17th April

  • How jQuery is helping Pixar to make their movies

    by Philip Floetotto

    Making movies is not all about pretty pictures as the management effort for creating Oscar winning movies is often a daunting tasks. This talk focuses on how jQuery is used to create flexible and intuitive tools to help our production team stay organized. We'll be covering some of our in-house plugins as well as how jQuery UI enabled us to create fast and interactive interfaces for both managers and artists.

    At 1:00pm to 1:30pm, Sunday 17th April

  • Nailing the Interactions on Pageless Apps (with Backbone.js)

    by Matt Kelly

    Make your users happy by building webapps without page loads. People waiting 2,000ms or more for a page on your app to load are losing interest and focus. Learn how to create an interface that responds in less then 100ms with Backbone.js, a JavaScript library created to keep large amounts of JavaScript organized and reusable. Examples from real applications will be used to demonstrate how pageless apps can be used to implement great interactions and make people happy. Both implementation and design decisions will be discussed.

    At 1:00pm to 1:30pm, Sunday 17th April

  • Harnessing jQuery Templates and jQuery Data Link, to build dynamic data-driven browser apps

    by Boris Moore

    jQuery Templates is much more than an engine to render HTML strings from data. It is designed to harness data and provide the means to easily build rich, maintainable, responsive, interactive browser apps in ways which, without templates, would be a daunting task. jQuery Data Link is also coming of age, and this presentation will show how together Templates and Data Link open up powerful new possibilities. The presentation will address not just first steps in using templates and data linking, but also dive deeper into some of the more advanced scenarios, and reveal the potential provided by some of the less well-known features.

    At 1:45pm to 2:30pm, Sunday 17th April

  • Presentational jQuery

    by Douglas Neiner

    Many jQuery users were introduced to the library when they needed to make something "slide up" or "move around" on the page. Regardless of how far you have come in your use of jQuery since then, animation and css changes still have a very big and often overlooked role in providing feedback to the user. Even experienced developers make mistakes in their use of the CSS and animation methods when they don't understand how to balance CSS, jQuery and user expectations. Mistakes in this area can often lead to sluggish performance and broken interfaces.

    Learn how to effectively use the jQuery CSS and animation methods to provide clear and meaninful feedback to the user while keeping your code efficient and fast. We'll take an in depth look at queing, easing, class manipulation strategies, animation strategies, custom animations and some additional tricks of the trade. Feel free to bring your laptop and follow along as you will be able to start using these techniques right away.

    As a bonus, we will also take a brief look at how jQuery can be used as a backup for CSS3 transitions and animations.

    At 1:45pm to 2:30pm, Sunday 17th April

    Coverage slide deck

  • Sneaking structure into your DOM-based application

    by Garann Means

    You thought you were building a proof of concept, but then that proof of concept went live. Or you had two weeks to build what should have taken two months. Or the handful of progressive enhancements you threw onto a page to make the user experience a little nicer somehow evolved into an entire single-page app. Whatever the reason, you find yourself with a full-blown application built around click events and a staggering number of plugins you can't even remember downloading. If you could rewrite it, you'd use a framework built with your scenario in mind, but it gets 17 zillion hits a day and there's only one of you and starting from scratch isn't an option. No, what you need is the philosophy of a framework broken into discrete pieces that fit into a one- or two-week release cycle. This talk aims to provide bite-sized strategies you can implement in a short amount of time with minimal disruption to unchain your application from the DOM.

    At 2:45pm to 3:30pm, Sunday 17th April

    Coverage slide deck

  • The jQuery UI Widget Factory: WAT?

    by Adam J. Sontag

    All of jQuery UI's widgets and interactions are built from a simple, re-usable constructor - the jQuery UI Widget Factory. It provides a flexible base for building complex, stateful tools with a consistent API that offers much more control than a simple jQuery.fn.myPlugin. In 45 short minutes, we'll review the problems the Widget Factory solves for you, discuss basic infrastructure, build an extensible filtering widget, and wrap the whole thing up with a delicious, cheesy example - lickety split!

    At 2:45pm to 3:30pm, Sunday 17th April

  • jQuery Development Productivity++

    by Paul Irish

    Get up to speed on all the newest features of a web app developer's best friend, Chrome Dev Tools. Update CSS styles on the fly, get a diff or save changes to disk. Set breakpoints on everything imaginable and dig into the networking stack to uncover performance gains.

    Get better familiarized with the tools you depend on to make you productive. We'll cover tricks unique to jQuery development and techniques for faster iterations within your team, through collaborative debugging.

    At 3:45pm to 4:15pm, Sunday 17th April

    Coverage slide deck

  • The Middle Way: Developing Hybrid Mobile Apps

    by Alex Kessinger

    HTML5 is awesome ... well Wait.

    It's great that the spec comes with all these fancy new tools, but how do I take this pristine spec, and shove it into some phones.

    While there have been two ways now comes a third, but it's not easy. As a web engineer trying to build hybrid apps I use web tech as much as possible, but fall back to the native code when necessary.

    Transitioning from a web developer to a mobile app developers isn't easy. It requires learning new coding techniques, but it also requires appropriating new ideas about how to use web technologies in the context of mobile apps. While using your existing web code skills is great start, most of us will need to learn some more to get into the mobile groove.

    Some of the things we are doing that I will talk about are: start with minimal help like jQuery. MVC is the way to go, but don't let it run your world. The Application Cache is awesome when it works. It's what you do when it doesn't that counts. Native isn't something you get out of the way, it's a big partner. Not everything is cotton candy, and pop rocks. There needs to be some more fancy tools. Right now everything in hybrid app development is about compromise, and how to do that without holding a zealot's grudge against native code. Past the nuts, and bolts, I want to inform people about the daily struggle of building a hybrid app on multiple platforms.

    At 3:45pm to 4:15pm, Sunday 17th April

    Coverage slide deck

  • Building UI with Wijmo

    by Chris Bannon

    Check out Wijmo, the new kid on the jQuery block. Wijmo has more than 30 widgets built on the jQuery UI Widget Factory, 18 of which are completely open source. We will take a look at how to use the widgets to help create rich interfaces for the Web. We will also be using widgets from jQuery UI and Themeroller to polish it off. You will walk away convinced that jQuery UI and Wijmo combine to become a solid option for building rich UI.

    At 4:30pm to 5:15pm, Sunday 17th April

    Coverage slide deck

  • Natural Language UI Testing using Behavior Driven Development with Pavlov and QUnit

    by Eric DeLabar

    Using concepts borrowed from the RSpec and Cucumber projects we'll explore the process of converting a stakeholder-readable design specification of a user interface feature into a QUnit test suite.

    We'll use the excellent Pavlov behavioral API to to produce readable, high-level tests that describe and test the way a UI works, not the way it should be programmed. Once a few tests are written, we'll implement the feature using the typical TDD red, green, refactor approach.

    Throughout the talk, all of our examples will attempt to provide a real-world implementation of TDD without boiling it down to a simple abstraction that requires too much interpretation to apply to production code.

    At 4:30pm to 5:15pm, Sunday 17th April

    Coverage slide deck

  • Creating mind-blowing UX - "Building great user experiences with the help of jQuery"

    by Darcy Clarke

    Don't be surprised if you walk away from this talk with the tools to build something that users can't stop tweeting and retweeting about; like it was a Justin Bieber song.

    User experience has never been more important. You only get one shot at impressing a new user and jQuery can help you meet that challenge. Cracking open the core UX philosophies and learning to master usability, user interface and interaction, with the help of jQuery and friends, this talk will give you the tools and understanding to create a meaningful experience for any project.

    At 5:30pm to 6:00pm, Sunday 17th April

    Coverage slide deck

  • Understanding jQuery Events, and working new HTML5 APIs

    by Boaz Sender

    In this talk we will step through some of the exciting new HTML5 JavaScript APIs at a high level and cover how to use jQuery to interact with them. Specifically, we'll look at patterns for working with new HTML5 events, and accessing some of the new event properties that we can use to make our web apps behave like desktop apps.

    At 5:30pm to 6:00pm, Sunday 17th April

    Coverage slide deck

  • Panel

    Members of the jQuery Team answer your questions.

    At 6:15pm to 7:00pm, Sunday 17th April