CDN$ 37.53
  • List Price: CDN$ 45.37
  • You Save: CDN$ 7.84 (17%)
Only 1 left in stock (more on the way).
Ships from and sold by Gift-wrap available.
High Performance JavaScri... has been added to your Cart
Have one to sell?
Flip to back Flip to front
Listen Playing... Paused   You're listening to a sample of the Audible audio edition.
Learn more
See all 2 images

High Performance JavaScript Paperback – Apr 2 2010

See all 5 formats and editions Hide other formats and editions
Amazon Price
New from Used from
Kindle Edition
"Please retry"
"Please retry"
CDN$ 37.53
CDN$ 19.88 CDN$ 18.98

Unlimited FREE Two-Day Shipping for Six Months When You Try Amazon Student
click to open popover

Frequently Bought Together

  • High Performance JavaScript
  • +
  • JavaScript: The Good Parts
  • +
  • JavaScript Patterns
Total price: CDN$ 90.01
Buy the selected items together

No Kindle device required. Download one of the Free Kindle apps to start reading Kindle books on your smartphone, tablet, and computer.

  • Apple
  • Android
  • Windows Phone
  • Android

To get the free app, enter your mobile phone number.

Product Details

  • Paperback: 231 pages
  • Publisher: Yahoo Press; 1 edition (April 2 2010)
  • Language: English
  • ISBN-10: 059680279X
  • ISBN-13: 978-0596802790
  • Product Dimensions: 17.8 x 1.5 x 23.3 cm
  • Shipping Weight: 386 g
  • Average Customer Review: Be the first to review this item
  • Amazon Bestsellers Rank: #280,267 in Books (See Top 100 in Books)
  •  Would you like to update product info, give feedback on images, or tell us about a lower price?

  • See Complete Table of Contents

Product Description

Book Description

Build Faster Web Application Interfaces

About the Author

Nicholas C. Zakas is a Web Software Engineer who specializes in user interface design and implementation for Web applications using JavaScript, Dynamic HTML, CSS, XML, and XSLT. He is currently principal front end engineer for the Yahoo! homepage and is a contributor to the Yahoo! User Interface (YUI) library, having written the Cookie Utility, Profiler, and YUI Test.

Nicholas is the author of Professional JavaScript for Web Developers and a co-author on Professional Ajax, and has contributed to other books. He has also written several online articles for WebReference, Sitepoint, and the YUI Blog.

Nicholas regularly gives talks about Web development, JavaScript, and best practices. He has given talks at companies such as Yahoo!, LinkedIn, Google, and NASA, and conferences such as the Ajax Experience, the Rich Web Experience, and Velocity.

Through his writing and speaking, Nicholas seeks to teach others the valuable lessons he's learned while working on some of the most popular and demanding Web applications in the world.

For more information on Nicholas:

What Other Items Do Customers Buy After Viewing This Item?

Customer Reviews

There are no customer reviews yet on
5 star
4 star
3 star
2 star
1 star

Most Helpful Customer Reviews on (beta) 4.4 out of 5 stars 33 reviews
35 of 35 people found the following review helpful
4.0 out of 5 stars Good tips, concise, not really ground-breaking April 2 2010
By Miller Medeiros - Published on
Format: Paperback Verified Purchase
This book is a good reference on how to optimize JavaScript applications and also an interesting read in case you want to know how things work "under the hood".

Many of the techniques presented also works for other programming languages (and are well-known performance tricks) and can be used without increasing too much the code complexity, which is a huge gain, you're not just becoming a better JavaScript developer but also a better developer.

One thing that should be clear is that this book is NOT intended for BEGINNERS, since it already presumes that you have a good knowledge and experience with JS programming.

If you already read Professional JavaScript for Web Developers (Wrox Programmer to Programmer) (also written by Zakas), High Performance Web Sites: Essential Knowledge for Front-End Engineers and Even Faster Web Sites: Performance Best Practices for Web Developers you will find that some of the techniques were already present on those books, so if you're up-to-date with the new technologies/tools and been researching about the subject probably you already know a good part of what this book has to teach, nevertheless it still a nice and interesting read since it explains how the JavaScript engines work and why those techniques are faster, the fact that it is concise is a big plus too.

The book has some typo mistakes (which doesn't affect the understanding) and some of the line graphs (used to show browsers benchmark) are hard to read since all the lines look the same (as of 1st Edition).

I strongly recommend this book to any intermediate to advanced developer who wants to learn how to improve the overall performance of JavaScript applications since it is a concise and accurate compilation of best practices, even if you know a lot about the subject you may learn a few new tricks or understand a little bit better why it works...
5.0 out of 5 stars Five Stars June 13 2016
By Pavel - Published on
Format: Paperback Verified Purchase
Nice Book.
30 of 32 people found the following review helpful
4.0 out of 5 stars great round-up of JS best practices (2 reviews in 1) April 13 2010
By R. Friesel Jr. - Published on
Format: Paperback Verified Purchase
While reading Nicholas Zakas' "High Performance JavaScript", it occurred to me that there were actually two different reviews that I wanted to write. So, rather than try to reconcile them into one review, I'll simply apply them here as an ordered list.

(1) To continue with the JavaScript University metaphor (from my review of Zakas' Professional JavaScript for Web Developers (Wrox Programmer to Programmer)): Finals are coming up in Prof. Crockford's upper-division JavaScript class. You've been a diligent student all semester and although you're not failing, it always seems like you're somewhere in the middle of the pack. You want desperately to ace the final exam, so you reach out for some help. Zakas (the graduate student/teaching assistant for the class) offers to show you the thesis he is working on. Then It hits you like a bolt from the blue -- every bit of it resonates with you. "It's so simple! so clear!" you exclaim. The inner machinations of the language snap together in a way that makes it all feel new and exciting -- the possibilities are boundless! You go back over your notes. You were close -- oh so close -- the whole time. But the last little bits drop in. A refinement here, a re-factor there... and the next thing you know, things are blazing. Your pages load 60% faster, execution time is down an average of 40%. You're amazed at yourself. And when the grades for the final exam come back, you're pleased to see that you aced it (aside from that little Oops on scoping closures -- but you try to think of that as a conscious trade-off). Prof. Crockford is pleased (if a little disappointed that it took you this long to Get It) and you're the envy of your peers. At least until next semester's RegEx class with Prof. Levithan. [Rated: 5 of 5]

(2) The frustrating part about working at a well-organized shop is that you get yourself all excited for a book like this and then half the recommendations in there are things that you're already doing. Put scripts at the bottom of the document? Check. Minify and compress? Check. Concatenate and package? Check. So on the one hand you say: "I guess I can sleep a little easier at night knowing that our build system adheres to the best practices recommended by the experts out there." But on the other hand, you're a little disappointed because you were hoping for some startling revelations. Again: not that this makes it without merit. From this perspective, what is noteworthy about this book is that these best practices and techniques are all gathered up in one place and presented in a logical order; even if "you're already doing it right", it is still a worthwhile exercise to meditate on the specifics, and to really go deep on why these best practices are important. (Plus, it's great to see the data -- nothing beats a little chartporn for proving the point.) [Rated: 4 of 5]
13 of 13 people found the following review helpful
5.0 out of 5 stars Comparing HPJS to Even Faster Websites April 30 2010
By David Waller - Published on
Format: Paperback
Having found Nicholas Zakas' blog to be an excellent resource on JavaScript insights, I was very much looking forward to this book. The fact that he'd also enlisted a whole cast of frontend rock stars to contribute chapters didn't do much to damper my excitement, so I was childishly happy when the book finally knocked on my door!

The title of the book is of course a throwback to Steve Souders' epitomous High Performance Web Sites: Essential Knowledge for Front-End Engineers, released a few years back by the same publisher. In much the same way it covers all aspects of performance in its chosen realm. That book gained Souders much appraise for making the web developer community at large aware of the various performance issues connected to the frontend, and how & why optimizing time was better spent there than on the backend which had previously been the prime target for such efforts. Last year Souders piggybacked on that appraise by releasing a sequel titled Even Faster Web Sites: Performance Best Practices for Web Developers (EFWS), where he - along with a group of co-authors, including Zakas - delved even deeper into frontend performance.

Souders' first book touched on JavaScript here and there, but in EFWS it plays a much more dominant role, being the focus of half of the chapters. Even though the context is still websites, the insights it offers can easily be applied to any realm in which JavaScript performance is a concern. This is why we used it as course literature for our university course on developing JavaScript RIA applications where it was much appreciated by the students, even though we weren't making websites as such. I myself love the book, and it is one of the most thumb-through tomes on my shelf.

My being a part of EFWS fandom was also the reason behind my prime fear regarding HPJS - just how big would the overlap between the two turn out to be? After all, the ideas behind them seem almost identical (minus the website bits); have a team of JavaScript performance ninjas each write a piece on their individual expertise. Would it really be justified to have these two books in the same shelf? Is this town big enough for the two of them?

Definitely yes. Although a Venn diagram would show quite a bit of overlap...

* HPJS chapter 1 (Loading and Execution) is largely made up of the same content as EFWS chapter 4 (Loading Scripts without blocking)
* EFWS chapter 7 (Writing Efficient JavaScript) contains the gist of HPJS chapters 4 (Algorithms and Flow Control), 6 (Responsive Interfaces) and 8 (Programming Practices)
* Most of HPJS chapter 9 (Building and Deploying High-Performance JavaScript Applications) can be found sprinkled across various EFWS chapters

...the books have enough diverse content, difference in tone of voice and primary focus, to make for two quite different reads.

The question of unique content, I feel, is largely moot anyway, as it is very rare to find a book containing knowledge that cannot be found elsewhere. That's not a bad thing, it's just the way of the web. When buying a programming book, you're paying for the convenience of having lots of related material collected in one place. The research behind HPJS chapter 2 (Data Access), for instance, has been detailed on Zakas' blog, just as Stoyan has already blogged a lot of what ended up in chapter 3 (DOM Scripting).

So downrating the book for being a "compilation", as one of the few not-so-positive other reviewers here does, is rather unfair and beside the point. HPJS should be judged, instead, by how well it weaves it all together, and of course by the quality of the individual chapters. In my book, it receives top scores in both of these categories.

Some co-authored books while inevitably feel rather fragmented. There are moments in EFWS when the (very) different writing styles of contributing authors gets in the way of seeing the whole picture. Similar moments arose for me while reading the semi-recent jQuery CookBook, which - while excellent - at times feels very schizophrenic. Of course co-authors need to be given some artistic leeway as to how they express themselves, but when they seem to have different takes on the main ideas behind the book, it becomes a problem.

This never happens in HPJS, which obviously has been the target of some very loving editing. Even though the different performance aspects have quite a different flavour, as does the writing of the contributing authors, you never lose the sense of context. The fact that the book stays true to its gospel - performance - is one of its biggest strengths.

There must have been innumerable temptations to mention non-performance related things that could be made to sort under a chapter's domain, but not fit inside the book as a whole. I'm sure, for example, that Steven Levithan bit his tongue while writing the (brilliant!) chapter on regexes, forcing himself not to share parts of his vast regexp knowledge that doesn't relate directly to performance. Because he and his peers withstood that temptation, HPJS is a better book.

Also worth mentioning is how succinct the book is. It is not very thick, but the information density is very high. While maybe not everyone's cup of tea, this is something I very much appreciate. Much like how Crockford's renowned JavaScript - The Good Parts delivers the message in few but well-chosen words without much air between them, HPJS is very clear and efficient in its teachings, with no filler content to increase page count.

Another merit is the "general knowledge level" of the content. Mostly, the teachings in the book are applicable to whatever JavaScript coding you're doing, today and in five years from now. We recently sang the praise of Jonathan Stark's new book on iPhone web apps, making that same point - it gives you ideas, which won't be made obsolete when the involved API:s inevitably change a few steps down the path.

So, to finally bottom-line this; both books have their place. EFWS and HPJS are partly speaking about the same things, but in different voices under different headlines to different people. Also, HPJS is a bloody brilliant book, and not owning it should be reason enough for ostracication from the frontend community.
5 of 5 people found the following review helpful
5.0 out of 5 stars Great optimization tips May 25 2010
By T. Ferrell - Published on
Format: Paperback
My company is in the process of building an enterprise level web application. As most developers do, we use a combination of Firefox and Firebug to test our application, and the application worked great in Firefox. Problem: the company standard for a web browser is IE7.

Upon running the app in IE7 the app lagged to a point where it was unusable. Intensive processes that took 2 seconds in Firefox took upwards 10 minutes in IE7 (not exaggerating). We complained about how much of a pain it is to program for IE for a while, but realized that we had to find a solution to these problems; they weren't just going to disappear by us complaining.

A Google search revealed some ways that we could optimize our code, and it worked to a degree; but what really helped our application pur was this book. By learning about the amount of load associated with certain processes, and discovering alternate, better ways of executing them we were able to make our application work in IE.

Looking back, I wish I'd know of these best practices and tweaks earlier, and certainly wish that I'd read this before we started with our app.