What is Toluu?
Toluu is a free service for sharing the feeds you read and discovering new ones.
Get Invite

John Resig

Blog, Projects, and Links


Ars Technica, Processing.js, Env.jsOctober 7

I've recently started writing for Ars Technica - and my first post is live now:
Extreme JavaScript Performance (WebKit and SquirrelFish Extreme)

I plan on contributing an article per week, or so, on topics related to JavaScript, browsers, and standards. I consider this to be a good challenge for myself - I have to perform considerably more research (interviewing, etc.) than I would for a normal blog post (which isn't to say that I won't for my blog - but that this is starting to get me in the good habit of doing additional fact-checking). I also plan on writing posts that are more-generic in nature. I find it pretty easy to become biased one way or another so I'm actively challenging myself to write from a more-neutral position.

Google Groups for Processing.js and Env.js

Two of my most popular side projects, Processing.js and Env.js now both have active Google Groups:

Feel free to ask any questions that you have (I receive considerable email about both these projects and it would be good


jQuery.embrace().extend();October 2

These past couple days have been a blast. jQuery Conference this past Sunday followed by 3 days of The Ajax Experience here in Boston.

2895300052_a23cbfd45a_m_d.jpg

I ended up giving 9 talks and was on 2 panels in 3 days - completely exhausting. We were able to get video of a bunch of the jQuery Conference so we should be posting it soon. It was great getting to see the whole jQuery team again. We talked a lot, did a lot of planning, and are ready to tackle the work in front of us.

Here are the presentations that I gave, if you're interested:

Adv. JavaScript and Processing.jsSeptember 22

Recently I gave two talks at the Web 2.0 Expo in New York City and one for the Boston IxDA.

Learning Advanced JavaScript

An advanced talk on the JavaScript language. Explored functions, closures, function prototypes, and inheritance. The entire presentation was given using an interactive site/presentation (tested in Firefox and Safari).

learn.png

Feel free to browse through the presentation (I'm not sure how useful it will be without me talking about the particulars - but it may be nice).

There are a number of neat things that I like about the implementation of this talk:

  • It's interactive. Each code slide is executable (the user can see the output right away). Additionally each slide is editable - just double-click the code to go into an edit mode.
  • Code editing is simple. Basic IDE functions (auto-indentation, proper tabbing, and backspace-to-delete-tab) are included. It's not a ton but it's enough to get started.
  • All code slides include syntax hilighting.
  • All slides are bookmarkable.

The presentation includes a number fill-in-the-blank quizzes to help test your knowledge of what you just learned. In practice I may save this for situations in which more people have laptops/computers at the talk.

Podcast: Microsoft on ECMAScript, IE 8September 9

Dion Almaer just posted the fourth episode of the Open Web Podcast in which we sat down with Allen Wirfs-Brock and Pratap lakshman and discussed ECMAScript and Internet Explorer 8.

The full release notes, from Dion, are below:

Allen Wirfs-Brock is the standards guy from Microsoft who sits and works on ECMA. Pratap Lakshman is from the JScript team, and works on the ECMAScript 3.1 committee.

They were gracious enough to joined us on the call to discuss the recent new around ECMAScript Harmony, how Microsoft feels about it, work that is being done in IE 8, performance, and tangents into ideas behind the Open Web.

You can download the podcast directly (OGG format too), or subscribe to the series, including via iTunes).

When a beta of IE 8 comes out, we all download it quickly to find out what was added, what wasn’t, and also making sure that our tricks weren’t taken away!

The guys talked about the Object.defineProperty support added in IE8b2. Allen clarified the implementation deta

JavaScript Benchmark QualitySeptember 6

Summary: JavaScript Benchmarks aren't adapting well to the rapid increase in JavaScript engine performance. I provide some simple tests for verifying this and propose a modified setup which could be used by all JavaScript Benchmarks to achieve high-quality results.

There now exists three, what I would consider to be, major JavaScript performance benchmarks. Each are released by a major browser vendor. WebKit released SunSpider, Mozilla released Dromaeo, Google released the V8 Benchmark.

Each suite has a variety of tests and a test runner. I'm currently interested in one thing: The quality of the test runner that each of these suites provides.

There are three points that any test runner tries to achieve:

  1. Retrieving accurate numbers. Another way to phrase it: "Retrieving stable numbers." If you run the test suite multiple times will you get identical, or near-identical, numbers?
  2. Reducing the possible error. Does the suite attempt to quantify how much possible error there could be in their results? How large is the error?
  3. Reducing run time. How long does it take to run each test?

The ideal suite would be one that's capable of running an individual test as quickly and accurately as possible with virtually no error. However, in o