A few months ago Cody Lindley asked if I would review his new book, jQuery Enlightenment after he saw me tweet about it. I jumped at the chance, but due to many other projects, this review has seen many delays. My apologies to Cody and to you for not posting this review sooner. That said, I’m very happy to share my thoughts now that time permits and I think you’ll find it useful.
The Short Review
At $15 for the PDF ebook, it’s a no-brainer. Buy a copy.
Two Quick Notes
First: when Cody released this book, jQuery was at 1.3.2. Between then and the time of this writing, jQuery 1.4 has been released. While there are some key differences introduced in 1.4, I don’t think they detract from Cody’s work.
Second: Cody gave me a copy of the book in return for this review. Luckily, I really like the book, so I feel confident in staking my reputation on the recommendation. I’m not receiving any form of affiliate payment for encouraging you to buy the book.
A Longer Review
So, obviously I like it. Here’s why.
Cody’s writing style is friendly and he has a knack for transforming complex concepts into understandable knowledge that you can quickly apply. He’s included a wealth of code, even better, he’s posted all the samples on JS Bin for easy access.
Additionally, as the file is a PDF, it is easy to take it with you on your phone, or using my favorite method – DropBox, which maintains the file across multiple machines. Keeping your copy open makes it easy to search for a particular event, effect or method while you’re working.
It Covers What You Need to Know
jQuery Enlightenment starts by explaining core jQuery concepts, quickly moving into more detailed and advanced topics. While I won’t reiterate everything (check out the table of contents on the site), I think it’s important to list some of the key concepts he does cover to show the breadth of the book:
- Traversing the DOM
- HTML manipulation, including a chapter on forms
- Events and Effects
- Performance Best Practices
- Writing a jQuery plugin
Yeah, Cody covers a lot in this book. While I’m by no means an expert, I’m comfortable with jQuery and I learned a lot. For example, I had somehow missed the existence of
stopPropogation(), so I’ve relied on
return: false. This works most of the time, but now I know that there’s extra granularity available to me should I need it. Nice.
Oh and don’t miss the gems in Chapter 12 (Miscellaneous Concepts) as he’s thrown in some very useful knowledge there at the end.
Grab a Copy and Tell Us What You Think
I’d love to hear your opinion on the book. Would you recommend it too? Let me know in the comments.
Being based on open web standards and being open source itself means SproutCore will enable developers to develop cross platform applications without being tied to either a plugin architecture or its vendor.
Sitting on top of web standards will also make it easy for Apple and the community to push SproutCore ahead without worrying about incompatible changes to the underlying layers of Windows, a significant problem for the old Yellow Box or some new Cocoa analog. SproutCore also lives in a well known security context, preventing worries about unknown holes being opened up by a new runtime layer.
These developments are exciting for oru industry, but also for the world as a whole – a solid platform that can be as portable and accessible as the Web, yet have the power of the desktop has long been sought. We may finally have it in our grasp.
The beta of Firebug 1.0 has been released and comes with some amazingly useful features. For those unfamiliar with this Firefox extension, Firebug provides a wealth of tools for developers to debug, monitor or edit portions of a site. Portions of it overlap the Web Developer’s toolbar, and in several cases, Firebug surpasses it hands down. Some of the features include:
- Inspect & edit HTML & CSS within the browser to see how changes will impact the current page.
- Visualize CSS metrics, including box model shading, measurements for each edge of a box (and the ability to edit those measurements in-line) , rulers and guides
- Monitor network activity to see why a page takes too long to load, broken down by type. You can also see which items are cached or not and examine HTTP headers and XMLHTTP Requests.
- Explore the DOM and edit as you go (including auto-complete) with handy JS code navigation.
- Vastly improved error handling and details.
This extension will actually reduce the need for several others you may have installed.
Code Snippets is an online resource, providing a central user-writable repository for chunks of reusable code. A stroll through the language-agnostic site provides a plethora of tasty bits and bytes from many programming languages and frameworks. Each snippet can be tagged and each tag can be followed via RSS. Users can comment on snippets as well, which is invaluable for anyone deciding whether or not they want to try out a piece of code.
Docking boxes (dbx) “adds animated drag ‘n’ drop, snap-to-grid, and show/hide-contents functionality to any group of elements. And … in what might be another world-first for brothercake – dbx is fully accessible to the keyboard as well as the mouse, an action I’ve dubbed “press ‘n’ move”.” This looks interesting, and may well join my tool box for future sites. Though I need to compare its functionality with some of the other JS tool sets that are AJAXified, I’m very excited about the fact that it is keyboard accessible, and hope that it degrades nicely for screen readers.