Ask Hacker Node.js: Which JavaScript book should I get?
HN has turned me into a convert of Node.js, which I need to learn for other reasons anyways. However, my background in JS is very sketchy. I've already been going through the wonderful Eloquent Javascript guide (http://eloquentjavascript.net/contents.html), but I'd like to get my hands on a real book in hard-copy that's more comprehensive.
I've narrowed it down to two O'Reilly books:
JavaScript: the Definitive Guide - Sounds solid, but I'm afraid of it being a bit too comprehensive to have to go through. And there's a new edition being released in summer, so I'm considering postponing waiting to get that one.
JavaScript: the Good Parts - I've heard a lot of acclaim for this book, almost universal. Then late last night I saw this rant and it gives me great pause now: http://goo.gl/oa9pj
However, I'm also willing to consider any other books, including non-O'Reilly ones.
Also, is the upcoming Up and Running With Node.js worth looking into? I suppose I should ask that after it's actually released and hopefully reviewed on HN.
(
6 comments
| 7 points
| on HN
)
At some point in those videos he mentions a book called The Little Schemer - I haven't read that but the reviews on Amazon look decent and if Crockford calls it out as useful you should probably not ignore it.
I found a really good book to be Object Oriented JavaScript from Packt (http://www.packtpub.com/object-oriented-javascript/book). Unlike most other js books, it spends a good few hundred pages without mentioning browsers. I seem to recommend their books a fair bit, no I do not have anything to gain from doing so :)
Finally, once you start getting stuck into things go hang out in the #node.js IRC channel. IRC is still probably the best technical resource out there as far as I'm concerned, especially when the community is as friendly as the #node.js regulars are.
I'd also read, and think about, accepting or denying what Crockford says. A lot of what he says is great, a lot of it - adding custom methods to inbuilt classes (potentially conflicting with some other libraries custom modifications) rather than redefining your own classes for example - isn't.