# Torn between these 2 JS books

**URL:** <https://forum.freecodecamp.org/t/torn-between-these-2-js-books/24202>\
**Category:** General\
**Created:** [July 31, 2016, 8:30am UTC](https://forum.freecodecamp.org/t/torn-between-these-2-js-books/24202 "2016-07-31T08:30:45Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![TheOnlyRealTodd](https://sea3.discourse-cdn.com/freecodecamp/user_avatar/forum.freecodecamp.org/theonlyrealtodd/32/7092_2.png) [@TheOnlyRealTodd](https://forum.freecodecamp.org/u/TheOnlyRealTodd)\
**Post date:** [July 31, 2016, 8:30am UTC](https://forum.freecodecamp.org/t/torn-between-these-2-js-books/24202/1 "2016-07-31T08:30:45Z")

</div>

Anyone read either of these two books? Trying to decide on which one to get and I’m kinda at a stalemate :. I’m currently reading _Eloquent JavaScript_ and I already have [Head First JavaScript Programming](https://www.amazon.com/Head-First-JavaScript-Programming-Freeman/dp/144934013X/ref=sr_1_1?ie=UTF8&qid=1469952908&sr=8-1&keywords=head+first+javascript+programming).

I’m basically looking for no-nonsense, straight-to-the-point presentation of JavaScript to include some of the more advanced concepts as well… Like [C# In a Nutshell](https://www.amazon.com/C-6-0-Nutshell-Definitive-Reference/dp/1491927062/ref=sr_1_1?ie=UTF8&qid=1469953647&sr=8-1&keywords=C%23+in+a+nutshell) but for JS. A book that can serve as a great reference when I’m coding but not at the expense of thoroughness. So far, I’ve got it down to these two but can’t decide:

1. [Professional JavaScript for Web Developers](https://www.amazon.com/Professional-JavaScript-Developers-Nicholas-Zakas/dp/1118026691/ref=sr_1_1?ie=UTF8&qid=1469951636&sr=8-1&keywords=professional+javascript)

2. [JavaScript: the Definitive Guide](https://www.amazon.com/JavaScript-Definitive-Guide-Activate-Guides/dp/0596805527/ref=pd_bxgy_14_2?ie=UTF8&psc=1&refRID=5AN0T2GTQCFK8K0P2309)

The only thing that worries me is that these books are both kinda dated… But I can’t seem to find any highly-acclaimed JS books made after year 2012 except for Eloquent, which I am already reading (the online version), and Head First but HF is kind of cluttered to be a good reference IMO.

@P1xt, I know you read a lot of books, you have a say in this?

---

<div class="post-metadata">

**Author:** ![kevcomedia](https://sea3.discourse-cdn.com/freecodecamp/user_avatar/forum.freecodecamp.org/kevcomedia/32/125737_2.png) [@kevcomedia](https://forum.freecodecamp.org/u/kevcomedia)\
**Post date:** [July 31, 2016, 10:00am UTC](https://forum.freecodecamp.org/t/torn-between-these-2-js-books/24202/2 "2016-07-31T10:00:33Z")

</div>

How about [You Don’t Know JS](https://github.com/getify/You-Dont-Know-JS)? It’s a series of six books. I’m currently reading this one.

---

<div class="post-metadata">

**Author:** ![chuckadams](https://sea3.discourse-cdn.com/freecodecamp/user_avatar/forum.freecodecamp.org/chuckadams/32/109651_2.png) [@chuckadams](https://forum.freecodecamp.org/u/chuckadams)\
**Post date:** [July 31, 2016, 3:16pm UTC](https://forum.freecodecamp.org/t/torn-between-these-2-js-books/24202/3 "2016-07-31T15:16:12Z")

</div>

Once you’re comfortable with the basic ideas, all you really need for reference is MDN. ECMAScript is revised literally every year now, so any book will be obsolete the moment it rolls off the press.

---

<div class="post-metadata">

**Author:** ![TheOnlyRealTodd](https://sea3.discourse-cdn.com/freecodecamp/user_avatar/forum.freecodecamp.org/theonlyrealtodd/32/7092_2.png) [@TheOnlyRealTodd](https://forum.freecodecamp.org/u/TheOnlyRealTodd)\
**Post date:** [July 31, 2016, 9:48pm UTC](https://forum.freecodecamp.org/t/torn-between-these-2-js-books/24202/5 "2016-07-31T21:48:13Z")

</div>

Solid advice, thank you!

---

<div class="post-metadata">

**Author:** ![giovannigiordano](https://sea3.discourse-cdn.com/freecodecamp/user_avatar/forum.freecodecamp.org/giovannigiordano/32/11945_2.png) [@giovannigiordano](https://forum.freecodecamp.org/u/giovannigiordano)\
**Post date:** [August 2, 2016, 1:29pm UTC](https://forum.freecodecamp.org/t/torn-between-these-2-js-books/24202/6 "2016-08-02T13:29:49Z")

</div>

I suggest you [SpeakingJs](http://speakingjs.com/). It talks only about syntax and best practices.

---

<div class="post-metadata">

**Author:** ![jemagee](https://avatars.discourse-cdn.com/v4/letter/j/ecc23a/32.png) [@jemagee](https://forum.freecodecamp.org/u/jemagee)\
**Post date:** [August 2, 2016, 3:27pm UTC](https://forum.freecodecamp.org/t/torn-between-these-2-js-books/24202/7 "2016-08-02T15:27:43Z")

</div>

My 2 cents on this book, and most books in general, is that Manning publications has the best ‘production value’ in terms of books to learn. I’ve used them to learn jQuery, JavaScript, Rails, Coffeescript etc…

---

<div class="post-metadata">

**Author:** ![TheOnlyRealTodd](https://sea3.discourse-cdn.com/freecodecamp/user_avatar/forum.freecodecamp.org/theonlyrealtodd/32/7092_2.png) [@TheOnlyRealTodd](https://forum.freecodecamp.org/u/TheOnlyRealTodd)\
**Post date:** [August 5, 2016, 10:19am UTC](https://forum.freecodecamp.org/t/torn-between-these-2-js-books/24202/8 "2016-08-05T10:19:28Z")

</div>

By the way, does there exist a good **JavaScript reference book?** For example, for C# I use _C# 6.0 in a Nutshell_ by Albahari and Albahari. Basically, can I get the MDN in a book format? I just prefer books to constantly going to websites for some reason. I like to flip through books whenever possible. It helps me too because sometimes I like to actually code with pencil and paper away from the computer.

Yes, I’m old fashioned and weird like that… But I’m actually kinda surprised at the lack of **updated textbooks** on JS compared to other languages… When JS is supposedly the most popular programming language.

EDIT: @giovannigiordano Speaking is great! It’s also relatively newer than the others. I just ordered a used copy from Amazon! That’ll have to do as my reference for now until a better one shows up.

---

<div class="post-metadata">

**Author:** ![azlan](https://avatars.discourse-cdn.com/v4/letter/a/f4b2a3/32.png) [@azlan](https://forum.freecodecamp.org/u/azlan)\
**Post date:** [August 6, 2016, 8:44am UTC](https://forum.freecodecamp.org/t/torn-between-these-2-js-books/24202/9 "2016-08-06T08:44:34Z")

</div>

I found this gem recently, not a book, but a bunch of very good Javascript articles. [http://www.i-programmer.info/programming/javascript.html](http://www.i-programmer.info/programming/javascript.html). It found the article about closures is very solid, easy to understand - [http://www.i-programmer.info/programming/javascript/1038-javascript-jems-asynchronous-patterns.html](http://www.i-programmer.info/programming/javascript/1038-javascript-jems-asynchronous-patterns.html)

For beginners, try this book instead - [https://www.amazon.com/Beginning-JavaScript-Jeremy-McPeak/dp/1118903331](https://www.amazon.com/Beginning-JavaScript-Jeremy-McPeak/dp/1118903331)

---

<div class="post-metadata">

**Author:** ![CarlJKashnier](https://sea3.discourse-cdn.com/freecodecamp/user_avatar/forum.freecodecamp.org/carljkashnier/32/66471_2.png) [@CarlJKashnier](https://forum.freecodecamp.org/u/CarlJKashnier)\
**Post date:** [August 7, 2016, 4:19am UTC](https://forum.freecodecamp.org/t/torn-between-these-2-js-books/24202/10 "2016-08-07T04:19:10Z")

</div>

I own almost all the ones mentioned. You dont know JS over the bunch of book are well written and cover ES6. The definitive guide is decent, a little more theroy than i like but serviceable think reference not tutorial. I would save my money and invest in React books… That is where you will have a brutal learning curve. I finally got it kinda but React is component driven and is brutal. Same with D3 but I got the D3 cookbook and covers most the projects on fcc. So what you want.

---

<div class="post-metadata">

**Author:** ![InfinitusEcho](https://avatars.discourse-cdn.com/v4/letter/i/90db22/32.png) [@InfinitusEcho](https://forum.freecodecamp.org/u/InfinitusEcho)\
**Post date:** [August 12, 2016, 6:12pm UTC](https://forum.freecodecamp.org/t/torn-between-these-2-js-books/24202/11 "2016-08-12T18:12:41Z")

</div>

I completely agree with P1xt on You Don’t Know JS and that your best reference is MDN JS. I also disliked Eloquent JS, it’s such a blotted and at times confusing read. I definitely would not recommend that book for a first time JS learner. I learned my first JS from “JS for dummies” and still so grateful to that book. Also as you progress along things will stop sinking in. Especially if you take long breaks from books. So after getting an understanding for basics start doing exercises. I can recommend these resources for practice.

**JS Koans**

> **[mrdavidlaing/javascript-koans](https://github.com/mrdavidlaing/javascript-koans)**
>
> javascript-koans - Koans to learn Javascript

**ReactiveX**

[http://reactivex.io/learnrx/](http://reactivex.io/learnrx/)

**_Not only JS, but it’s there_**

**Code wars**

> **[Codewars: Train your coding skills](https://www.codewars.com/)**
>
> Codewars is where developers achieve code mastery through challenge. Train on kata in the dojo and reach your highest potential.

**Coderbyte**

> **[Coderbyte | The #1 Website for Coding Challenges](https://coderbyte.com/)**
>
> Coderbyte is a web application that helps you practice your programming skills, prepare for coding bootcamps, and prepare for job interviews with our collection of interview questions, videos, and solutions.

There are many others you can search for. But those should keep you busy for a while. And this turned into quiet a resources rich topic. 🙂

---

<div class="post-metadata">

**Author:** ![arc](https://sea3.discourse-cdn.com/freecodecamp/user_avatar/forum.freecodecamp.org/arc/32/165356_2.png) [@arc](https://forum.freecodecamp.org/u/arc)\
**Post date:** [August 12, 2016, 6:46pm UTC](https://forum.freecodecamp.org/t/torn-between-these-2-js-books/24202/12 "2016-08-12T18:46:59Z")

</div>

+1 for [You Don’t Know JS](https://github.com/getify/You-Dont-Know-JS).

This series will teach you all about the quirky stuff in JavaScript that a lot of beginner books will completely skip over. Read them, you’ll be glad you did. 🙂

---

<div class="post-metadata">

**Author:** ![samuelpath](https://sea3.discourse-cdn.com/freecodecamp/user_avatar/forum.freecodecamp.org/samuelpath/32/162094_2.png) [@samuelpath](https://forum.freecodecamp.org/u/samuelpath)\
**Post date:** [August 27, 2016, 6:55am UTC](https://forum.freecodecamp.org/t/torn-between-these-2-js-books/24202/13 "2016-08-27T06:55:44Z")

</div>

@P1xt, could you please tell me more about your opinion on React? I won’t be able to master both React and Angular, so I’ll need to choose between the two. Thanks again for your input.

---

<div class="post-metadata">

**Author:** ![gobees](https://sea3.discourse-cdn.com/freecodecamp/user_avatar/forum.freecodecamp.org/gobees/32/13468_2.png) [@gobees](https://forum.freecodecamp.org/u/gobees)\
**Post date:** [August 31, 2016, 12:36am UTC](https://forum.freecodecamp.org/t/torn-between-these-2-js-books/24202/15 "2016-08-31T00:36:37Z")

</div>

i have the definitive guide (#2 above). It’s a tough read. Needs more examples. For a beginner like me, I would not recommend it.

---

<div class="post-metadata">

**Author:** ![samuelpath](https://sea3.discourse-cdn.com/freecodecamp/user_avatar/forum.freecodecamp.org/samuelpath/32/162094_2.png) [@samuelpath](https://forum.freecodecamp.org/u/samuelpath)\
**Post date:** [September 14, 2016, 8:20pm UTC](https://forum.freecodecamp.org/t/torn-between-these-2-js-books/24202/16 "2016-09-14T20:20:49Z")

</div>

@P1xt  
Is “Professional JavaScript for Web Developers” really too dated to be useful today?  
And is there anything covered in that reference book that isn’t covered in YDKJS?  
Thx 🙂

---

<div class="post-metadata">

**Author:** ![samuelpath](https://sea3.discourse-cdn.com/freecodecamp/user_avatar/forum.freecodecamp.org/samuelpath/32/162094_2.png) [@samuelpath](https://forum.freecodecamp.org/u/samuelpath)\
**Post date:** [September 15, 2016, 7:45am UTC](https://forum.freecodecamp.org/t/torn-between-these-2-js-books/24202/18 "2016-09-15T07:45:11Z")

</div>

@P1xt Perfect, I’ll go for YDKJS then, since what I care for the most currently is mastering JS as a language. I believe that with the fundamentals mastered, everything else will comenaturally. Moreover, since many libs and tools are writting in JS (like Angular for instance), understanding them will come much more easily if I truly understand JS.

---

<div class="post-metadata">

**Author:** ![alodavi](https://sea3.discourse-cdn.com/freecodecamp/user_avatar/forum.freecodecamp.org/alodavi/32/32571_2.png) [@alodavi](https://forum.freecodecamp.org/u/alodavi)\
**Post date:** [September 15, 2016, 8:54am UTC](https://forum.freecodecamp.org/t/torn-between-these-2-js-books/24202/19 "2016-09-15T08:54:47Z")

</div>

I have “JavaScript: the Definitive Guide”. It’s useful… If you learn better by reading and you want to know more about javascript as a programming language (there is also a section dedicated to the front end development). But that said, I wouldn’t recommend this book in your case, because it could have too much stuff that you don’t need at the moment (this book is HUGE).

---

<div class="post-metadata">

**Author:** ![gobees](https://sea3.discourse-cdn.com/freecodecamp/user_avatar/forum.freecodecamp.org/gobees/32/13468_2.png) [@gobees](https://forum.freecodecamp.org/u/gobees)\
**Post date:** [October 1, 2016, 9:20pm UTC](https://forum.freecodecamp.org/t/torn-between-these-2-js-books/24202/20 "2016-10-01T21:20:49Z")

</div>

i have it on kindle but it’s still a long long read. (definitive guide)

---

<div class="post-metadata">

**Author:** ![nawazishali](https://sea3.discourse-cdn.com/freecodecamp/user_avatar/forum.freecodecamp.org/nawazishali/32/18086_2.png) [@nawazishali](https://forum.freecodecamp.org/u/nawazishali)\
**Post date:** [October 2, 2016, 1:30am UTC](https://forum.freecodecamp.org/t/torn-between-these-2-js-books/24202/21 "2016-10-02T01:30:24Z")

</div>

@P1xt Do you also have a blog or something I can subscribe to. You always come up with so many great resources. Thanks for being helpful to every one. 🙂

---

<div class="post-metadata">

**Author:** ![FreddieFO](https://sea3.discourse-cdn.com/freecodecamp/user_avatar/forum.freecodecamp.org/freddiefo/32/8856_2.png) [@FreddieFO](https://forum.freecodecamp.org/u/FreddieFO)\
**Post date:** [October 14, 2016, 9:32pm UTC](https://forum.freecodecamp.org/t/torn-between-these-2-js-books/24202/23 "2016-10-14T21:32:10Z")

</div>

I think your knowledge (regardless of the topic) should be shared with the world via blogging. Medium is a pretty beginner-friendly place to blog!

---

<div class="post-metadata">

**Author:** ![LuisGonzaga](https://sea3.discourse-cdn.com/freecodecamp/user_avatar/forum.freecodecamp.org/luisgonzaga/32/26446_2.png) [@LuisGonzaga](https://forum.freecodecamp.org/u/LuisGonzaga)\
**Post date:** [October 26, 2016, 11:42pm UTC](https://forum.freecodecamp.org/t/torn-between-these-2-js-books/24202/25 "2016-10-26T23:42:26Z")

</div>

> [@P1xt](#):
>
> YDKJS

I’ve read the first book of YDKJS and the opinion of the author about Douglas Crockford is … bullsh\*t. “javaScript, the Good parts” was written in 2008 with version 1.8 of js, when the closures where introduced and they are already explained in the book.  
At the time MS wasn’t supporting js at all, mobile was something to come in the future and the big success of Crockford with Yahoo.

YDKJS is a nice book in the tech side, much easier to read than the good parts for sure 🕶

[Next page](https://forum.freecodecamp.org/t/torn-between-these-2-js-books/24202.md?page=2)
