Conference Talks in September: jQuery and jQuery UI

September is full. I’m giving five talks next month on jQuery and jQuery UI. Here’s my schedule:

Rich Web Experience - East (Washington, D.C. Area) Tag: rwe2008
September 4-6, 2008
Talk 1: jQuery
Talk 2: jQuery UI: Rich Interactivity Simplified

Rich Web Experience - West (San Jose, CA) Tag: rwe2008
September 8-10, 2008
Talk 1: jQuery
Talk 2: jQuery UI: Rich Interactivity Simplified

Library of Congress (Washington, D.C.)
September 18, 2008
A team of developers has invited me to come speak with them. Apparently they’re fans of jQuery (no surprise there) and want to learn more. Awesome. Thanks Ed Summers.

jQuery Conference 2008 (Boston, MA) Tag: jquerycon2008
September 28, 2008
Last year we had a one-day jQuery Camp right after TAE. This year we’ve graduated to a full conference :). I’ll be doing an introductory talk on jQuery UI.

The Ajax Experience 2008 (Boston, MA) Tag: tae2008
September 29-Oct 1, 2008
Talk: Rich Interactivity, Simplified, with jQuery U
This will be my second Ajax Experience. I had an absolutely awesome time last year meeting almost the entire jQuery Team and jQuery UI Team.

If you’ll be at any of these, I’d love to meet up with you. Contact me on identi.ca @rdworth.

jQuery UI now in Google’s AJAX Libraries API

Google announced recently that jQuery UI is the latest addition to their hosted AJAX Libraries API:

jQuery UI … is now hosted on our AJAX Libraries API! As usual, your users will get a performance boost when you use JQuery UI through our API, so get started by checking out the docs.

Now you can put one script tag on any page and benefit from cache, min, gzip, and google’s CDN:

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.5.2/jquery-ui.min.js"></script>

and you’ve got all jQuery UI plugins and effects. Beauty.

jQuery UI 1.5 Final Release

jQuery UI 1.5

I’m pleased to say that the jQuery UI 1.5 release is out. Here’s the full blog post for all the info:

jQuery UI v1.5 Released, Focus on Consistent API and Effects

There’s a lot there, so I won’t repeat it all here. However, I do want to mention on of my favorite parts of this release:

ThemeRoller

ThemeRoller

Wow! Give a hand to Filament Group for creating ThemeRoller.com. Now you can create a custom jQuery UI theme including colors, textures, hover effects, to match any site or app. They’ve got an extensive writeup on their awesome work, and they’ve even got guidelines on how to write jQuery UI plugins so that they’re ThemeRoller-ready.

Thank You

Finally, thanks to all who helped with tests, demos, documentation, feedback, criticism, and encouragement. Keep it coming.

jQuery UI Sprint A Huge Success

The jQuery UI sprint this last weekend was great. In all we had over 35 participants and got a lot of good stuff done.

We worked on demos to showcase all the UI plugins, opened and closed a bunch of tickets, reviewed and updated the documentation, and continued writing unit tests for each UI plugin. We also had some crucial discussions about API consistency, and simplified some of the code dependencies.

We’re not quite ready for the final 1.5 release, but this sprint was a great push toward that goal. I was pleased to see that we attracted some new contributers. They made a real contribution, and we were happy to have some fresh perspective on how we’re doing, and how we can do better. They key now is to keep this good momentum going.

Paul will be doing a more complete summary post on the jQuery blog later today. But I wanted to at least mention here: Thanks to all who made this sprint a success.

jQuery UI Sprint starts tomorrow

I announced the first jQuery UI Sprint on the jQuery blog last Friday. It will take place all day tomorrow and Saturday. Here’s a summary:

The jQuery UI Team is pleased to announce its first Worldwide Sprint, to take place next Friday and Saturday, March 14-15, 2008. Two full days of testing, fixes, documentation, and general getting-stuff-done. Our goal is to get the jQuery UI 1.5 release (alpha, beta) ready for final, and we invite any and all to help. Whether you have an hour, or an afternoon, come and run really fast with us.

I’m really excited about this event. We’ll have a few team members there to help facilitate, and a lot of new contributors as well. So far there are 22 people signed up to participate. If you want to give UI some love, add your name to the list, even if you can’t be there the whole time. We’ve got some exciting stuff planned. See you tomorrow.

jQuery UI 1.5 alpha

We finally got the jQuery UI 1.5 alpha out, along with jQuery 1.2.3:

jQuery 1.2.3: AIR, Namespacing, and UI Alpha

jQuery UI 1.5 alpha
What a road for UI 1.5. Originally it started as 1.0.1 (just bug fixes) following the 1.0 release in September. Then it grew into 1.1 (a little added functionality, a couple API changes). Neither of these actually got released. The closest was a fairly quiet 1.0.1a. In the end, there were so many big changes, especially in the API, but also in a couple plugins that were entirely reworked, that it was promoted to 1.5. Here’s a couple I’ve been spending a bit of time on:

Selectables
The version of Selectables in the 1.0 release was not what some might call useful. I’m happy to say this is fixed in 1.5.

Dialog
Dialog has a few fixes (like with multiple dialogs, if you click on one it comes to the top), but the most requested feature (by far) didn’t quite make it into the alpha: modal option. This will be in the beta. Stay tuned.

Dialogs and Theming with jQuery UI

I had my second jQuery UI Article published on DMXzone today:

Tutorial: Dialogs and Theming with jQuery UI

In this article I’ll introduce jQuery UI Dialogs. I’ll also introduce one of the premiere features of jQuery UI: themes, and will show how they can be used to make a consistent and attractive web application. As in my last article, Drag-and-Drop Shopping Cart with jQuery UI, I’ll assume a basic familiarity with jQuery (the base of jQuery UI). You should be comfortable with jQuery syntax and basic selectors.

See my earlier post, Drag-and-Drop Shopping Cart with jQuery UI, for more information on DMXzone Premium Content.

Drag-and-Drop Shopping Cart with jQuery UI

I had my first article published on DMXzone.com yesterday. I’m going to be writing a couple tutorials a month on there, as well as on DNzone.com. I’ll mostly be focused on writing jQuery UI tutorials. Check it out:

Tutorial: Drag-and-Drop Shopping Cart with jQuery UI

In this article, I’ll introduce jQuery UI Drag-and-Drop and show you how with just a few lines of code, you can make a richly interactive shopping cart that is functional and fun to use. To get right into it, I’m going to assume that you’re at least familiar with jQuery (the base of jQuery UI). You should have a working (latest) copy of jQuery installed and be comfortable with the jQuery syntax and basic selectors.

It’s published in the Premium Content section, which means it’s not free. You can either pay a few dollars, or if you like the whole site (lots of great content, as well as an online magazine), they’ve got annual subscription options for unlimited access.

I’ve got a few more articles in the works including: dialog, theming, selectables. Leave a comment if you’ve got other ideas for articles.

The Rest of My Ajax Experience

Happy Belated Birthday! That’s how I feel writing this post. “I was just making it last longer.” The rest of my week at The Ajax Experience in Boston was great. So great, in fact that I had absolutely no time to write while I was there (after the zero’th day). Between talks and in the evenings I spent lots of time with the jQuery team and others that I was meeting for the first time. It was great.

This started as a huge mega-catch-up-post, but at the rate it was going, it wasn’t going to be published in time for next year’s conference! So this’ll have to do, to unclog my blog:

The conference was excellent. I can’t recommend it highly enough. I’m really hoping I can go again next year. It was awesome to meet the rest of the jQuery team (nearly all were there), and other jQuery (and non-jQuery) folks.

TAE Day 0 - Early Registration, Tutorials

Update: Added link to John’s presentation slides

I’m counting today as Day 0 of The Ajax Experience since it’s sort of an extra day. Originally the week was to be Wed-Fri and they added Tue to have early registration and three 90-minute tutorials. Cool.

I got into Boston at about 10:30am. I couldn’t check into my hotel until 3pm, so I went straight to the Seaport Hotel. They were nice enough to check my suitcase there and directed me across the street to the World Trade Center, the location of The Ajax Experience.

I arrived at about 11. Early registration wasn’t until 12:30, so I that gave me a bit of time to catch up on email and situate my backpack. I had this idea to bring along a surge protector and keep it in my backpack with everything plugged into it: cell phone charger, laptop power cord, camera battery charger. It worked marvelously. And when it came time to stand up and walk away, I just had one thing to unplug. The other end stayed in my bag with all my wall warts and cables. Beauty.

I walked over to the registration desk at 12:30. A line of about 20 people had beat me by waiting around for a bit before then. I got my badge, lanyard, and conference proceedings/packet and made my way to the room where the tutorials would be. There was ample seating, which I was glad to see. There was a podium, two large projector screens, and a big camera on the speaker. Each seat had a pad of paper and a pen, a drinking glass, and there was a pitcher of water every three seats or so.

What was missing? Outlets. Nowhere in sight to plug in. So I had my laptop on (unplugged) for about 10 minutes before the first tutorial. It remained off the rest of the day. Don’t know if this is to encourage people to pay more direct attention to the speaker, or if it was just the specifics of this room. Either way, I hope there are plenty of places to “plug-in” at later session rooms during the week. Ok, let’s get to the tutorials:

Tutorial #1: Introduction to Ajax, Ben Galbraith

The schedule had Ben and Dion. Ben mentioned that Dion couldn’t make it until this evening. So it was just Ben. But just Ben is just fine. He started out by having a raise of hands of who was brand new to AJAX. About 50% in attendance raised their hands. Perhaps fitting since this was an introduction tutorial. I looked around to get a rough idea, but didn’t count. I’d guess there were between 80-120 people there. A good group.

This was my first time seeing Ben speak and I really enjoyed it. It was easy to watch him for 90 minutes. He followed a good outline, fit in everything he needed/wanted, and explained things clearly. I was also impressed with his tenacity in doing a live demo from scratch during the presentation (with very few errors ;) )

Here’s a few choice quotes:

Ajax is a catch-all marketing term that means we can do cool things in a web browser

let’s web pages do a lot more than they’ve ever done before

the fundamental technique behind Ajax - browsers can contact server using JavaScript

XHR can be done synchronously. I guess that would be SJAX or something

I’m no UI guru, but I think hanging the browser is not a good UI experience

often with Ajax, what looks super complex is somewhat simple

Tutorial #2: JavaScript Library Overview, John Resig

John started out by saying that the Ajaxian Conference organizers must think he can do a decent job at remaining objective in giving an overview of JavaScript libraries, despite being an author and maintainer of a popular one, since this is not the first time he’s done this presentation.

Fortunately I don’t have to be as objective as John. So here I go: John Rocks. jQuery Rocks. Ok there, I said it. Now on to what John said:

Update: Here’s a link to John’s slides/presentation

Here’s a few choice quotes/excerpts:

When choosing a JavaScript Library, the first question you want to ask yourself is, “How you do want to write JavaScript?”

Libraries make JavaScript bearable

Prototype sets out to improve the usability of the JavaScript language, adding “missing” features

jQuery focuses on the interaction between HTML and JavaScript

YUI is an attempt to standardize internal JavaScript at Yahoo

Dojo focuses on providing everything needed for building web applications

A JavaScript library should provide (at a minimum): DOM functions (traversal, manipulation), Events, Ajax, Animations (simple)

For UI Widgets - Prototype has Scriptaculous, jQuery has jQuery UI, Dojo has Dijits, YUI has included

Dojo is taking a solid lead in accessibility for widgets (ARIA - Accessible Rich Internet Applications)

All 4 libraries (Proto, jQuery, YUI, Dojo) have liberal licenses - In short: Don’t remove the copyright line, Don’t sue us

I didn’t make it to the third tutorial this afternoon (Designing for Ajax, David Verba). John and I got to talking as this is the first time we’ve met in person (a pleasure). I also was happy to (quickly) meet tonight:
Jörn Zaefferer
Marc Grabanski
Karl Swedberg
Jonathan Chaffer

Benjamin Sterling and I missed each other by about 10 minutes, so we’ll meet in the morning.

Day 0 overall was quite good. Everything ran smoothly. The location is great, and everything is top-notch. The questions from the audience were quite good, and it was obvious people were getting a lot from attending. I’m looking forward to Day 1.