Blog

jQuery Conference 2010: San Francisco Bay Area Registration Open!

Posted March 17th, 2010 by Mike Hostetler

Registration for the jQuery Conference 2010: San Francisco Bay Area is now open!

Register here:

http://events.jquery.org/2010/sf-bay-area/registration

The agenda is still being worked on and will be announced shortly. It’s fully expected that the conference will sell out again (as it has every year, so far) so if you’re interested in coming please sign up sooner rather than later!

Interested in speaking? Please fill out our call for speaking submissions form

Microsoft to Expand its Collaboration with the jQuery Community

Posted March 16th, 2010 by John Resig

The jQuery Project is excited to announce that Microsoft is expanding its support of the jQuery JavaScript Library through new initiatives, to include code contributions, product integration, and the allocation of additional resources.

Building on two years of collaboration with the jQuery Project, Microsoft announced today at MIX 2010 that it will be working with the jQuery Core Team and community to provide source code that will help to further advance the jQuery JavaScript Library. The planned contributions target specific functionalities in areas of mutual interest. They include:

  • Templating
  • Script Loading
  • Data Binding

The initial focus will be on a new templating engine that will allow for easy and flexible data rendering via defined templates. Microsoft has submitted a proposal for public review along with an experimental plugin, and is actively collaborating with the jQuery team and community on a unified implementation. The templating engine will be reviewed and considered for inclusion into the jQuery JavaScript Library or maintained as an official jQuery plugin.

Microsoft will also ship a current release of the jQuery JavaScript Library in both Visual Studio 2010 and ASP.NET MVC as well as continue to host current versions of the library on the Microsoft CDN.

Lastly, Microsoft will be providing resources to assist in QA testing of jQuery in new environments to ensure continued stability and longevity of the library.

We see these contributions as a tremendous benefit to the jQuery effort and community and look forward to continued collaboration with Microsoft.

jQuery Conference 2010: San Francisco Bay Area Announced

Posted March 15th, 2010 by Mike Hostetler

Microsoft Silicon Valley Research CenterThe jQuery Project is very excited to announce the dates for our first-ever San Francisco Bay Area conference. The conference will be held at the Microsoft Silicon Valley Research Center in Mountain View, California on April 24th and 25th, 2010.

The San Francisco Bay Area conference is the second of four events planned by the jQuery Project in 2010. The first was the jQuery14 event, and additional conferences are being planned in Europe and on the East Coast for later this year.

This venue is the largest that the project has worked with to date (Harvard Law School in ‘07, the MIT Stata Center in ‘08 and Microsoft New England Research Center in ‘09) and we expect to sell out very quickly.

Registration is currently scheduled to open on Wednesday, March 17th; tickets will be priced at $199. In addition to General Admission tickets, we’re offering a limited number of discounted student tickets priced at $99, with a valid student ID.

Watch the jQuery blog or jQuery Twitter feed for notification when registration opens.

A brief synopsis of some of the content that you’ll be able to expect:

  • jQuery
  • jQuery UI
  • jQuery Plugins
  • Complex Application Development
  • jQuery Case Studies

In addition to two days of jQuery sessions, for the first time we’ll be adding an additional day of jQuery training, prior to the main event. The training will be provided by appendTo and focused on helping you and your team get up to speed on jQuery prior to attending the conference. The training will cover the following topics:

  • Introduction to jQuery
  • Finding Something
  • Doing Something With It
  • Chaining
  • Introduction to jQuery UI
  • Implementing jQuery UI Widgets

The training will be held on April 23rd at the Microsoft San Francisco offices in downtown San Francisco; tickets will cost $299. All proceeds from training go to the jQuery Project.

Interested in speaking? Please fill out our call for speaking submissions form and watch the jQuery Blog for updates.

The Official jQuery Podcast – Episode 15 – John Resig (jQuery 1.4.1 – 1.4.2)

Posted March 12th, 2010 by Ralph Whitbeck

The Official jQuery PodcastThis week Elijah and Ralph talked with John Resig about details from the recent jQuery 1.4 point releases. We also get updates on the next point releases and other features that are in the works.

You can subscribe to the show in iTunes or via the raw RSS feed or you can download the MP3.

Here are the show notes for this episode:

Read the rest of this entry »

The Official jQuery Podcast – Episode 14 – Phil Haack

Posted March 5th, 2010 by Ralph Whitbeck

The Official jQuery PodcastThis week Elijah and Ralph sit down and talk with Microsoft’s Phil Haack, Senior Program Manager on the ASP.NET team, currently working on the new ASP.NET MVC Framework. We discuss their recent decisions to include jQuery into several of their products what ASP.NET MVC is and how jQuery is integrated into the project.

You can subscribe to the show in iTunes or via the raw RSS feed or you can download the MP3.

Here are the show notes for this episode:

Read the rest of this entry »

The Official jQuery Podcast – Episode 13 – David Walsh

Posted February 26th, 2010 by Ralph Whitbeck

The Official jQuery PodcastIn this episode we sat down and talked with David Walsh, a developer for the MooTools JavaScript framework. We spent time comparing jQuery with MooTools and talked about how each community can help each other.

You can subscribe to the show in iTunes or via the raw RSS feed or you can download the MP3.

Here are the show notes for this episode:

Read the rest of this entry »

jQuery 1.4.2 Released

Posted February 19th, 2010 by John Resig

jQuery 1.4.2 is now out! This is the second minor release on top of jQuery 1.4, fixing some outstanding bugs from the 1.4 release and landing some nice improvements.

I would like to thank the following people that provided patches for this release: Ben Alman, Justin Meyer, Neeraj Singh, and Noah Sloan.

Downloading

As usual, we provide two copies of jQuery, one minified (we now use the Google Closure Compiler as the default minifier) and one uncompressed (for debugging or reading).

You can feel free to include the above URLs directly into your site and you will get the full performance benefits of a quickly-loading jQuery.

Additionally you can also load the URLs directly from either Google or Microsoft’s CDNs:

New Features

A full list of the API changes can be found in the 1.4.2 category on the jQuery API site.

In this release we’ve added two new methods: .delegate() and .undelegate(). These methods serve as complements to the existing .live() and .die() methods in jQuery. They simplify the process of watching for specific events from a certain root within the document.

For example:

$("table").delegate("td", "hover", function(){
	$(this).toggleClass("hover");
});

This is equivalent to the following code written using .live():

$("table").each(function(){
	$("td", this).live("hover", function(){
		$(this).toggleClass("hover");
	});
});

Additionally, .live() is roughly equivalent to the following .delegate() code.

$(document).delegate("td", "hover", function(){
	$(this).toggleClass("hover");
});

What’s Changed?

There has been some large code rewrites within this release, both for performance and for fixing long-standing issues.

Performance Improvements

As is the case with virtually every release of jQuery: We’ve worked hard to continue to improve the performance of the code base, making sure that you’re provided with the best performing JavaScript code possible.

According to the numbers presented by the Taskspeed benchmark we’ve improved the performance of jQuery about 2x compared to jQuery 1.4.1 and about 3x compared to jQuery 1.3.2.

jQuery Taskspeed Results (Feb 14, 2010)

Specifically we’ve improved the performance of 4 areas within jQuery:

While comprehensive benchmarks like Taskspeed can be interesting if deconstructed into individual sub-tests for further study, as a project we tend to stay away from using them as an accurate measure of true, overall, library performance. Considering how many aspects make up a library, not to mention the different techniques that they offer, cumulative results rarely reflect how an actual user may use a library.

For example, we saw significant overall performance speed-ups in Taskspeed simply by optimizing the $("body") selector because it’s called hundreds of times within the tests. Additionally we saw large gains by optimizing .bind() and .unbind() by a fraction of a millisecond – an inconsequential amount – especially considering that any cases where you would bind hundreds of events you would likely want to use .live() or .delegate() instead.

We’ve collected some results from the other major libraries as well but are less interested in those results and far more interested in the performance improvements that we’ve made relative to older versions of jQuery itself.

We will continue to work on optimizing the jQuery code base – indefinitely. It’s always a major concern for us to try and provide the fastest JavaScript/DOM-development experience possible. And yes, there will likely always be ways to gain additional performance – either through internal optimizations or by pushing critical functionality off into browser-land for standardization.

Event Rewrite

The largest internal changes have come through a much-needed structural rewrite of the events module. Many quirky issues related to event binding have been resolved with these fixes.

Namely event handlers are no longer stored as object properties in jQuery’s internal object store (with metadata attached to the handlers). Instead they’re now stored within an internal array of objects.

If you’ve ever had the opportunity to play around with .data("events") on a jQuery element you would find that it returns an object with all the event types currently bound, within it.

To enumerate some of the changes that have occurred during this rewrite:

  • It’s now possible to bind identical handlers with different data, namespaces, and event types universally.
  • Execution of event handlers will continue after one handler removes itself (or its sibling handlers).
  • We no longer attach data/namespace information directly to the event handlers (only a unique tracking ID).
  • We no longer use proxy functions, internally, to try and encapsulate handlers.
  • Execution order of events is now guaranteed in all browsers. Google Chrome had a long-standing error in their object-looping logic that has been routed around.

As a side-effect of these changes we had to change the newly-exposed special add/special remove APIs in order to accommodate the new event data objects. Ben Alman is in the process of writing up a large tutorial on jQuery’s special event system and we will be making additional announcements when that occurs.

Bug Fixes

There were a total of 40 tickets closed in this minor release. Some relating to differences between jQuery 1.3.2 and jQuery 1.4.x, some fixing long-standing issues (like in the case of the event module rewrite).

Raw Data

This is the raw data that we collected to generate the aforementioned charts.

	jQuery 1.3.2	jQuery 1.4.1	jQuery 1.4.2	Prototype 1.6.1	MooTools 1.2.4	Dojo 1.4.1	YUI 3.0.0
FF 3.5	2182	806	 565	 2156	 1073	 575	 1885
FF 3.6	1352	677	 519	 2067	 857	 750	 1494
Opera	983	697	 222	 793	 678	 218	 1201
Safari	610	435	 252	 315	 235	 238	 612
Chrome	1591	703	 293	 271	 312	 222	 745
IE 8	2470	1937	 1141	 3045	 4749	 1420	 2922
IE 7	4468	3470	 1705	 9863	 10034	 1737	 5830
IE 6	6517	4468	 2110	 13499	 11453	 2202	 7295

The Official jQuery Podcast – Episode 12 – Rey Bomb 1

Posted February 19th, 2010 by Ralph Whitbeck

The Official jQuery PodcastThis week Elijah Manor is attending the MVP Summit at Microsoft so Ralph Whitbeck sits down with fellow Developer Relation members Rey Bango, Cody Lindley and Karl Swedberg. Additionally, we had Doug Neiner of Fuel Your Coding on to talk about everything jQuery.

We discuss the reactions to 14 Days of jQuery, Pros and Cons of the new API site, jQuery UI as well as many other topics. We also answered a listener question.

You can subscribe to the show in iTunes or via the raw RSS feed or you can download the MP3.

Here are the show notes for this episode:

Read the rest of this entry »

The Official jQuery Podcast – Episode 11 – Yehuda Katz

Posted February 15th, 2010 by Ralph Whitbeck

The Official jQuery PodcastIn our final episode from the 14 Days of jQuery recordings in Washington, DC, Ralph and Elijah sat down with Yehuda Katz, core team member of the Rails and jQuery teams. We discuss the new hooks that are coming in Ruby on Rails that allow it to use jQuery natively.

Note: Since we’ve recorded this episode Ruby on Rails 3 Beta has been released.

You can subscribe to the show in iTunes or via the raw RSS feed or you can download the MP3.

Here are the show notes for this episode:

Read the rest of this entry »

The Official jQuery Podcast – Episode 10 – appendTo, LLC

Posted February 14th, 2010 by Ralph Whitbeck

The Official jQuery PodcastDuring the 14 Days of jQuery recordings, Elijah and Ralph sat down with appendTo cofounders Mike Hostetler and Jonathan Sharp. We discuss the company’s mission, services and client experiences.

appendTo, provides training, support and consulting services to programmers and end-user enterprises who adapt jQuery into their front-end web development strategies. We provide world-class service and superior knowledge of jQuery and its uses in creating superior customer experiences.

You can subscribe to the show in iTunes or via the raw RSS feed or you can download the MP3.

Here are the show notes for this episode:

Read the rest of this entry »