jQuery Enlightenment By Cody Lindley

Posted September 18, 2009 at 8:50 AM by Ben Nadel

Tags: Javascript / DHTML, Books

As an attendee of the jQuery Conference 2009, I received a free PDF version of Cody Lindley's new book, jQuery Enlightenment. The jQuery conference was tremendously inspiring, so needless to say, I returned from it ready to devour some tasty jQuery goodness. And, devour it I did; I got through jQuery Enlightenment in three nights, no problem. Of course, this was not just a factor of my newly fueled enthusiasm - jQuery Enlightenment happens to be a very nice read; I found it to be the perfect balance of explanation and code sample. If jQuery's message is "Write Less, Do More," then this book's message would be "Read Less, Learn More."


 
 
 

 
jQuery Elightenment By Cody Lindley.  
 
 
 

At 123 pages, jQuery Enlightenment is certainly concise, but manages to cover the full API of the jQuery library. It does this by concentrating on an explanation-by-code technique, relying on prose only to expand upon anything that was not easily gleaned from the Javascript samples. A style like this could have easily been disastrous; but, Cody's jQuery code was so clear and well commented that with just a few lines, he was able to, in the most simple way, fully demonstrate the feature in question. While I was occassionally left with the question of "Why," as in "Where and why might I use this feature?", I was certainly never left wondering "How" a particular feature worked.

This book would be fantastic for anyone who is relatively new to jQuery and wants to learn it, in depth, in the most efficient way. But, that is not to say that this book is basic; as someone with a good deal of jQuery experience, I found myself dog-earing every few pages, seeing things that I had either never seen before or things that I wanted to look into more deeply. I think that because jQuery Enlightenment is so easy to read, it feels like a deceptively low-level book. But, when you take a step back and think about what it's covered, you realize that it gets quite advanced, covering custom pseudo-selector development, plugin development, event delegation, closures, callbacks, and everything else you need to cultivate a rock-solid understanding of how jQuery works. As such, I think that there is information here that would benefit even the more advanced jQuery programmers.

What this book is not is a book about jQuery application architecture; while you will walk away from this book with a fantastic grasp of what jQuery can do, you might walk away with questions about how to most effectively pull it all together. That's not to say that you won't be able to build jQuery applications; the rich internet applications (RIA) that I build currently operate at the levels covered in this book. But, if you're looking for a book that discusses things like Javascript MVC (Model-View-Controller) or single-page application development, you should look elsewhere.

Overall, Cody Lindley's jQuery Enlightenment book is quite impressive. I found his writing style and code samples to be very clear and easy to understand. And, one thing that I thought was brilliant was that every single one of his code samples is available online at JSBin.com, hot-linked directly from the PDF. In general, the book was just very well executed; and at just $15 for the PDF version, it's a great deal.


 
 
 

 
Cody Lindley And Ben Nadel At jQuery Conference 2009 In Cambridge, MA.  
 
 
 

Cody Lindley and myself at jQuery Conference 2009 in Cambridge, MA.




Reader Comments

Sep 18, 2009 at 9:49 AM // reply »
211 Comments

Regarding "jQuery application architecture" - I think Jason Dean / Andy Matthews need to get off their asses and write up something on this. When we were doing the AIR stuff, that's the one thing I noticed / learned.


Sep 18, 2009 at 9:53 AM // reply »
11,246 Comments

@Todd,

Ha ha, word up!


Sep 18, 2009 at 10:14 AM // reply »
4 Comments

>> If jQuery's message is "Write Less, Do More," then this book's message would be "Read Less, Learn More."

Thats a nice comment; as a tech reviewer, I
appreciate, and I'm sure Cody does, too. Thanks for the great review.


Sep 18, 2009 at 10:24 AM // reply »
11,246 Comments

@Jörn,

My pleasure. Great to meet you at the conference. I told Glen that you used his Marketo form and he told me how you guys knew each other.


Sep 18, 2009 at 11:09 AM // reply »
4 Comments

Oh, right. I didn't catch your name then. Was nice meeting you there!


Sep 18, 2009 at 11:14 AM // reply »
3 Comments

Question: you said that "as an attendee of the jQuery Conference 2009, I received a free PDF version" of the book. Were all attendees supposed to get a copy? I was at the conference and didn't see anything about it.


Sep 18, 2009 at 11:16 AM // reply »
11,246 Comments

@Graham,

In your attendee packet, you should have gotten a business-card-looking paper with a discount code on it. As far as I know, everyone got one.


Sep 18, 2009 at 11:20 AM // reply »
3 Comments

@Ben -- Hmm, I'll have to look again but I don't remember seeing one.


Sep 18, 2009 at 11:27 AM // reply »
6 Comments

@Ben,

Was that the card from Manning that offered a free version of jQuery in Action or Javascript Ninja?

I also don't remember seeing Cody's book offered as a free download.

Michael


Sep 18, 2009 at 11:55 AM // reply »
11,246 Comments

@Michael,

That was the other one - we got two cards. One for jQuery Enlightenment and one for Manning books (I think).


Sep 18, 2009 at 12:33 PM // reply »
6 Comments

I will have to look at my stuff because I don't remember seeing that one either.

I hope your ride back to NYC was uneventful.


Sep 18, 2009 at 12:35 PM // reply »
11,246 Comments

@Michael,

Yeah, it was mostly uneventful. Got home, grabbed a few hours of sleep, and then right back to work :)


Sep 18, 2009 at 12:48 PM // reply »
6 Comments

@Ben,

I actually went to work a couple hours late on Monday but came in feeling all refreshed and jQuerified.


Sep 18, 2009 at 12:51 PM // reply »
11,246 Comments

@Michael,

Ha ha, jQuerified most definitely!


Sep 18, 2009 at 2:35 PM // reply »
3 Comments

For everyone confused about the discount code, I emailed the organizers and asked.

"There were 30 passes given out at random during checkin. Not everyone got one. There were also other books given away at check in to the first so many people who checked in."


Sep 18, 2009 at 2:44 PM // reply »
11,246 Comments

@Graham,

Ah, OK, that makes sense. I did some other people get hard-copy books that I did not get.


Sep 25, 2009 at 9:55 AM // reply »
2 Comments

When you say: "if you're looking for a book that discusses things like Javascript MVC (Model-View-Controller) or single-page application development, you should look elsewhere"

Where? Where? Where? lol! Does such a book even exist?


Sep 25, 2009 at 12:43 PM // reply »
11,246 Comments

@Jamal,

I share your curiosity. I am trying to get through some jQuery books and none that I have looked at really address this yet. My next book to read is jQuery In Action. Perhaps that will shed some light.

In the mean time, I'm trying to fool around with some ideas (very rough) that I will present on soon.


Sep 26, 2009 at 6:30 PM // reply »
2 Comments

Well, I've read most of it (JQuery in Action) and it does not. The closest I could find to match my need were old books (but good books) that gave insight into single page application development, these are Ajax in Action and Professional Ajax (chapter 5 is a gem). I am currently trying the finite state machine approach to clean my event oriented design, I recommend:

http://www.ibm.com/developerworks/web/library/wa-finitemach2/index.html

http://www.ibm.com/developerworks/web/library/wa-finitemach2/index.html

http://www.ibm.com/developerworks/web/library/wa-finitemach3/index.html

To get inspired and to study this (even if it uses Ext.JS):

http://max-bazhenov.com/dev/upload-dialog-2.0/index.php

Hope this helps.


Sep 29, 2009 at 5:43 AM // reply »
1 Comments

As I found, jQuery Enlightenment was written to express the concepts essential to intermediate and advanced jQuery development. I am trying to get jquery Enlightenment book having good quality semi-gloss and good the color look. Once i will read it then surely post feedback on this blog.


Sep 29, 2009 at 8:01 AM // reply »
11,246 Comments

@Jamal,

Thanks, I'll have to check that out. I'm working right now on a jQuery + ColdFusion application demo / presentation in which I am really trying to use some sort of MVC on the client side. Mostly just trial and error at this point.


Nov 11, 2009 at 9:53 AM // reply »
2 Comments

Read Less, Learn More - I love to do this. if someone is there to explain things, its great right?


Dec 2, 2009 at 5:00 PM // reply »
1 Comments

Although it doesn't directly address MVC, there is a jquery plugin that has made most of my AJAXy stuff almost laughably easy to implement.

Checkout http://malsup.com/jquery/taconite/.
Check the docs and the demos.

I have used this on a number of Django-based sites. I created a simple "class Taconite" to gather/wrap/render the taconite object. It uses jQuery CSS-based addressing and handles all sorts of replace/append/delete/etc., allowing multiple changes per call. It also has an eval() function so that you can trigger arbitrary JavaScript as part of your response.

I use a Jquery onready to decorate all manner of links with specific actions to call taconite-based URLs to update parts of the page. This can degrade nicely into a simple new-page-load if the user has JS disabled.


Aug 26, 2010 at 7:27 PM // reply »
3 Comments

Wow. I love when I chance upon sites like this ('enlightenment', to me, had a whole different meaning). I've three postgraduate degrees, and not a clue what you guys are talking about. The world is mighty wide.


Aug 26, 2010 at 10:17 PM // reply »
11,246 Comments

@Andrew,

Glad that you're liking it, as non-stereotypically enlightening as it may be :) I also blog somewhat about books, life, and love, which maybe of a more traditional interest.


Aug 27, 2010 at 11:08 AM // reply »
3 Comments

Thanks, I'll keep watching (and hope you'll get a chance to notice my site, and blog which is w/in it)


Aug 27, 2010 at 11:28 AM // reply »
11,246 Comments

@Andrew,

It looks like you have written a very interesting collection of books there. I'll have to check them out. I'm not a religious person; but, as you say, when you come at these books as a source of guidance, arguing with the historical facts becomes irrelevant.

When I read the description of your book, The American Psyche in Search of its Soul, I was reminded of Viktor Frankl's, Man Search For Meaning. He had a great quote in that book, something like, "He who has a why to live can bear with almost any how." Anyway, just popped into my head - I know this is not really the best forum to discuss this :)


Aug 30, 2010 at 1:27 PM // reply »
3 Comments

@Ben,
Frankl is a great looming influence on me (from long ago, but not forgotten). That what motivates a human being is a need for meaning, not just cravings for food/sex/money, seems undeniable to me. Without it we're just annoyingly clever animals.
Andy



Post A Comment

Comment Etiquette: Please do not post spam. Please keep the comments on-topic. Please do not post unrelated questions or large chunks of code. And, above all, please be nice to each other - we're trying to have a good conversation here.

Please review the following issues:

Author Name:


Author Email:

Author Website:

Comment:

Supported HTML tags for formatting: <strong>bold</strong>   <em>italic</em>   <code>code</code>







  • Help Wanted - Find Your Next ColdFusion Job
Ben Nadel's Company - Epicenter Consulting Recent Blog Comments
May 25, 2013 at 10:01 PM
My Experience With AngularJS - The Super-heroic JavaScript MVW Framework
@Avi, Really glad to help! @Jaredwilli, I'm finding a this image hits home with a lot of people :) Hopefully we can all work through the rough patches together! @Prateek, AngularJS has error ... read »
May 25, 2013 at 9:53 PM
Nested Views, Routing, And Deep Linking With AngularJS
@Mrsean2k, I'm glad I could help! I haven't been able to keep up with the ui-router stuff. I keep saying that I'll carve out time, but I just haven't gotten to it :( ... read »
May 25, 2013 at 9:49 PM
What If All User Interface (UI) Data Came In Reports?
@Jonah, Thanks for the book recommendations. I am looking them up right now. I can see that Object Thinking is available for the Kindle App - sweet! Also, I just recently heard Martin Fowler on the ... read »
May 25, 2013 at 9:41 PM
HashKeyCopier - An AngularJS Utility Class For Merging Cached And Live Data
@Chris, I'm super excited to hear that my posts are helpful. I am also loving AngularJS; but, it definitely has some caveats and some odd behaviors and some things that just don't seem to "wor ... read »
May 25, 2013 at 9:36 PM
Ask Ben: Manually Enforcing Basic HTTP Authorization In ColdFusion
@Adam, @Jason, After reading these comments, I double-checked my latest implementation and I am happy to report that I am using listFirst() and listRest(). ... read »
May 25, 2013 at 9:31 PM
Using "//" And ".//" Expressions In XPath XML Search Directives In ColdFusion
@Daxesh, I am not sure I understand the question about the current node. If you already have a reference to the current node, why would you need to query for it? As for parent node, I believe that ... read »
May 25, 2013 at 10:08 AM
Using "//" And ".//" Expressions In XPath XML Search Directives In ColdFusion
@Ben, my question is that i want the current node with its tag and its parent node. i just want only that data. So, give me the solution for that. and remember solution is working on " xpath 1.0 ... read »
May 25, 2013 at 10:01 AM
Using "//" And ".//" Expressions In XPath XML Search Directives In ColdFusion
hey ben, i want get my current node tag and also want the root node tag withing. So, how can i fix it.. ! ... read »
InVision App - Prototyping Made Beautiful With Prototyping Tools