Going Deep

Project JSMeter: JavaScript Performance Analysis in the Real World

Download this episode

Download Video

Description

JavaScript is the most widely used programming language on the web. As the great Douglas Crockford likes to say, JavaScript is both the world's most popular programming language and the world's least popular programming language at the same time.

In this episode of Expert to Expert (to Expert), Erik Meijer joins MSR research scientists Ben Livshits and Ben Zorn to talk about JavaScript, project JSMeter and today's trends in web programming.

Dr. Zorn and Dr. Livshits have been doing a significant amount of research on how JavaScript is used in the real world by analyzing JS execution on large-scale (JS-heavy) commercial web sites. Their formal exploration of JS executing in the real world, Project JSMeter, has yielded results, which seem to indicate that current JS performance test suites are at best suspect in terms of how JavaScript is actually running on the web, in production, on real sites, etc. But read the findings and make your own judgments, of course. 

Tune in. Enjoy.

Embed

Format

Available formats for this video:

Actual format may change based on video formats available and browser capability.

    The Discussion

    • ShinNoNoir

      I watched this two weeks ago and skimmed the paper. Now I have this question: Have you studied the number of (simultaneous) XmlHttpRequests most web apps make?

    • Charles

      I just FW'd it to the two Bens.

      C

    • BenZorn

      Thanks for the question.  We did not measure the number of simultaneous XmlHttpRequests in our current study, although that's an interesting question.   There are a number of additional measures like that including the ways the typical WebApps interact with the DOM that we are also interesting in knowing.  While we do not have concrete plans right now for collecting such data, if we do get it, we'll make it available from our project website.

    • ShinNoNoir

      Thank you for your time answering my question. Smiley

       

      My question arose when I was reading this proposal to add a priority property to XmlHttpRequests, but I had my doubts whether it would be a useful addition.

    • we

      There's a blog post about the report: www.belshe.com/2010/03/31/how-to-tune-a-porsche/  

       

      I wonder how the authors would respond to that.

    • BenZorn

      Thanks for your question.  We are aware of the related blog post and disagree with the conclusions the author reaches.  Specifically, the analogy with the elephant, while quite visually provacative, is inaccurate.  The implication is that browser users want to drive their browsers on a racetrack all day (e.g., the benchmarks).     Browser users want high performance, but not for small benchmarks that don't correspond to their daily experience.  A better analogy would be to consider driving your browser down a city street in traffic.  In that case, which we argue is the common case, the fact that your browser performs like a Porsche on a racetrack isn't as meaningful.   What the user cares about is how it handles in traffic.  We are presenting this research at the WebApps 2010 conference in Boston, on June 23, 2010 (http://www.usenix.org/events/webapps10/). 

    Comments closed

    Comments have been closed since this content was published more than 30 days ago, but if you'd like to continue the conversation, please create a new thread in our Forums, or Contact Us and let us know.