JavaScript Books Help

Ok guys and girls, I’d like your help on which JavaScript books to buy! After what seems like hours of searching, reading reviews, looking at tables of contents and contemplating I’ve decided that I’ll read some more…Read what you guys (and girls) think.

I’ve created my own shortlist (although it’s not very short lawl) of what I think I may be happy with purchasing and reading through. If there’s a book you know on JavaScript / DOM Scripting that I should definately buy that I haven’t listed in this shortlist or haven’t listed in the list of books I already have then please tell me. It’s a fairly long shortlist really, a longlist I guess, but I don’t know what I’m doing and the books listed below seem to be in my range / level.

Feel free to suggest / recommend a list of books from this list as I won’t just be buying one. Unless there is one book that covers absolutely everything these is to know about beginners JS (you know, basically everything JS excluding the OOP side) in which case I’ll finally buy one last book on JS and not need to spend anymore! :smiley: All of the links go to Amazon.co.uk so you can see the prices in UK British pounds - my budget is around £100, maybe £150 as I’ll get some of the books for my birthday and pay for anymore with my own money.

Books I Currently Own

My Shortlist

Halp pls. kthnxbye.

Andrew Cooper

I really liked the book ‘Unobtrusive Javascript’ by P.P. Koch.

I liked the writing style of Jeremy Keith in his book Bulletproof Ajax… but I’m not working with ajax anymore…

Overall, I like Peachpit press :slight_smile:

Another book that covers the use of javascript is SitePoint’s “Build Your Own AJAX Web Applications”. You can only get the pdf version directly from SitePoint but you might be able to get a printed copy via somewhere like Amazon.

SpacePhoenix, thanks for the suggestion and although it is appreciated as with all other suggestions and recommendations I should have pointed out that I’m not interested in AJAX or AJAX related books. I’ve had a look at the book previously and didn’t see anything on beginners JavaScript that would be helpful to me. I just had another look at the table of contents for the book but it looks like it’s pretty much all AJAX content.

There are other books out there also on JavaScript such as Design Patterns and Advanced OOP JavaScript as well as JavaScript Library / Framework books including the upcoming book jQuery: Novice to Ninja also from SitePoint. However, I’ve omitted these from the short / long list because I’m strictly looking for beginners books on JavaScript, but the beginners books shouldn’t necessarily mean a 200 page book. It should cover everything a professional JavaScript coder / Front-End Web Developer would need to know (excluding OOP JS).

Thanks again,

Andrew Cooper

I saw one book listed twice…by Paul Wilton: “Beginning javascript”. Every little bit to make your list shorter.

In the bookstore I saw a JS book by Shelly Powers (O’reilly) which, flipping through it, seemed a sort of go-straight through the DOM and Do Stuff book, which might be useful.

The Definitive Guide and The Good Parts get a definite two thumbs up from me.

Agreed, even though I don’t understand half of what’s in Good Parts, when looking for code examples online I can use the back part to recognise what to avoid. Also, logic-flow diagrams++.
6th Edition already for Rhino?? Dayum, that’s fast. I has 5 and it mostly updated DOM stuff.

because I’m strictly looking for beginners books on JavaScript, but the beginners books shouldn’t necessarily mean a 200 page book. It should cover everything a professional JavaScript coder / Front-End Web Developer would need to know (excluding OOP JS).

I doubt a “beginners” book can cover everything a professional front-ender should know, assuming said Front-ender isn’t working in an environment where the extent of JS knowledge doesn’t need to go further than how to copy others’ scripts and modify them accordingly, or write very small things.

I’ve got Simply Javascript and an old copy of my husband’s Anthology. With both, there came a point where I had to stop and go find some other sources to read, before coming back to them. I don’t think it’s those books explaining things badly, but more that it took time and multiple differing explanations before stuff started to “stick”.

Still gonna pimp Marijn’s site: http://eloquentjavascript.net/ I don’t see the DOM stuff as particularly beautiful with all that typical old-fashioned HTML but, whatever. I’m struggling with higher-order functions, closures, and recursion recursion recursion.

(excluding OOP JS)

You can’t. Everyone’s an object, lawlz. Though you can also just make everything a function (functional programming) but functions are objects.

[ot]

You see that, people? I can haz sfeer of Influence! Lawlz![/ot]

Purchasing:

Ok, I’m definately purchasing the following books.

Amended Shortlist:

I’ve looked over the shortlist again and made some amendments to it, it’s much shorter, slightly more focused and there are less outdated books listed too. If you can’t make any recommendations on which of the following to buy, then could you make recommendations on which not to buy instead?

I’ve definately buying The Definitive Guide and The Good Parts now. felgall, I’m a beginner in JavaScript really and need a helping hand, can you recommend which of the books in the list not to buy? And I’ve amended the list to take out the more outdated books.

Silly me xD, sorted.

Is that the Learning JavaScript book by Shelly Powers? I had a look at it and was going to add it to the list but after looking at the table of contents it didn’t look great. Do you recommend it though? (I know you just said you flicked through it, but from flicking through it, would you say it’s worth it?)

Yea, I could really do with the Rhino book right now to be honest but I’m not going to buy the 5th Edition brand new when 6th Edition is only 4 months away. I’ll have to wait for it.

Lawl. I’m talking about John Resig’s book and all the others that talk about OO JS. For the majority of the JS I’ll be making and wanting to use in Web pages, I doubt I’ll have to make use of OO techniques within JS, hence, I don’t want heavy / advanced books that talk about OO JS solely.

xD Lawl :stuck_out_tongue:

Andrew Cooper

In that case, I definitely recommend Head First JavaScript, that’s a very good book that makes it easy to grasp the different concepts involved.

The O’Reilly site lets you read it online too, via Safari Books. Click the [Read it now] link at the Head First JavaScript

I can’t really say about Shelly’s book. It seemed to move fast, compared to, say Simply Javascript which is really slow and hand-holding. Further, I really couldn’t say. It might be sitting in a bookstore near you and you might be able to flip through it.

About the Rhino: it’s not a beginner book, it’s kind of more a book about Javascript. It describes it, explains it, states what are the rules for it, etc. It reminded me of Perl’s Camel book, a LOT.
Same with Good Parts. Good Parts does not introduce JS. It states a case for it having some really good stuff for programmers in it, despite all the flaws it has. For me as a beginner the back of the book was more valuable than the front. I figure you already know that, but since others may read this, being beginners too…

There are also two kinds of beginners and I’d think the Beginners books would be to one group or the other: people wholly new to programming (like me) and people new only to Javascript.

I agree that this is one of the best books on JavaScript for beginners (it says so in the list of quotes inside the front cover of the book itself).

The WROX book “Professional JavaScript for Web Developers” is an excellent alternative if you already know other programming languages since it introduces JavaScript the same way most other languages are introduced rather than the way most books introduce other languages. I wouldn’t recommend it if you haven’t been learning other languages from books before though - for that the Head First book is far superior.

I found the style of the Murach book difficult to follow so that I didn’t even understand what some of the code was meant to be about when I first read it - I am not sure who that book is supposed to be intended for, there are a few sections of it that cover some things that are fairly advanced that are not covered in the other books scattered in between some of the really basic introductory parts.

DOM Scripting by Jeremy Keith is a nice introduction to JavaScript. If you’d like to dabble in jQuery these videos are pretty straightforward

Cheers,

Jon

Purchasing:

Ok, I’m definately purchasing the following books.

Amended Shortlist:

Ok so I’ve only got one more book to decide on. Christian Heilmann’s Beginning JavaScript with DOM Scripting & Ajax: From Novice to Professional. I’ve had another look over the table of contents and the following three Web pages / sites:

It’s still a 50 / 50 really. I know he’s great and all, but the book is dated 2006. Although Jeremy Keiths book was published in 2005 and his book is great! Can I get some more help on this one please?

Not just because of you two, but pretty much everyone is recommending Head First JavaScript. So I’m going to buy that too! :slight_smile:

Nope :frowning: it isn’t. The libraries and bookstores in the towns I live near don’t have many good books for JavaScript or Web-related topics at all. Hopefully it’ll change soon though.

Absolutely. I’ve found that there are a lot of books that’ll teach languages -for beginners- yet they’ll somehow expect them to already know programming concepts, because they don’t teach /explain them very well at all. There should be books on -x- language that teaches the beginners programming concepts and the language features, it sounds like HFJ does this. And so does Marijn’s book.

I’m not new to programming concepts as I’ve created some small-scale applications in VB.NET and of course small, tiny JS scripts. I guess the more we read (whatever it is we read) the more we learn!

I’m going to also purchase this book, along with Head First JavaScript. I had another look at the books table of contents and it looks to be a really good read. It’s pretty recent (published just a year ago) and the author seems to be respected in the JS world as he’s also written High Performance JavaScript (which I’ve taken out of my shortlist because it isn’t focused on beginners JS. I’m sure I’ll buy it in the future though.)

I’ve removed this from my shortlist. Besides, I had another look at it and it isn’t a focused book on beginners. It deals with chapters on JS Libraries (which isn’t what I want) and has a chapter at the beginning with XHTML and CSS. I’m fine with XHTML and CSS, it’s JS I want to read about. So I won’t be buying this book, sorry Murach and Ray Harris!

Thanks for the help, felgall.

And about jQuery - I don’t want to know about JavaScript Libraries at the moment. I’m focusing on learn JavaScript from the ground up so that eventually, if I wanted to, I’d have the knowledge, skills and experience to create my own JS Library.

You’ve seen my (pretty much finalized) list of JavaScript books I’m going to purchase. Before I go ahead and order them all - is there anything I should take out or include? I think the list at the top of this post is pretty solid and will give me an all-round basic understanding of JavaScript although I do one day want to be a professional JavaScript coder. Thanks for the help in deciding though, it might not seem like a big thing but buying brand new (they have to be brand new - blame my OCD!) books like these that are going to end up costing me a fair bit of cash (which doesn’t come easy being a student!) is a fairly important decision for me, especially if it turns out I’ve just bought another 5 books (on top of the 5 I currently own) that don’t teach me everything I need to know!

Andrew Cooper

I assume you are referring to the second edition of “Professional JavaScript for Web Developers” (which is slightly improved on the first edition - not that there was much that could be improved on anyway).

You do seem to have all the best JavaScript books for beginners that I have seen over the past few years on your list.

There should be books on -x- language that teaches the beginners programming concepts and the language features, it sounds like HFJ does this. And so does Marijn’s book.

Heh, there is. My husband still has his Programming Pascal in Delphi book somewhere… there are languages like Pascal and Cat that are “teaching” languages… you can use them in a real application if you want, but they’re mostly used to teach basic concepts, variables and pointers, loops, arrays and hashes, functions and objects…

At least 5 people have told me to just read the ANSI C book, or flat out “learn C”. Well, I managed to get through chapter 2 but then I died.

Marijn’s book introduces and explains the concepts but he also goes very fast. Closures and recursion in chapter 3! : )

I have a couple of Pascal books somewhere - one that I used for a course at uni back in 1979 and the other I think covered the USCD operating system that was an alternative operating system for the Apple and IBM computers of the early 80s - from memory it was on the Apple ][ implementation so I don’t know how much that varied from the IBM-PC version (USCD Pascal being one of the three operating systems that could be run on the original PCs - the other two being DOS and CP/M - Microsoft Xenix being added as a fourth alternative for the IBM-XT).

I think Pascal was about the third or fourth programming language I learnt (although the course assumed that everyone had no prior programming experience - which meant that they didn’t expect complete solutions to the assignments and gave bonus points when you gave a more complete answer than expected leading to my getting marks like 11 out of 10 for some assignments).

I actually think JavaScript would make quite a good first language for people to learn as it doesn’t require a great deal to be set up to be able to write and test it and it does have constructs that cover most of the concepts of both structured and object oriented languages.

It might not seem that helpful at first, but I don’t think you need yet another book. If you’ve mastered the content in Simply Javascript and The Art and Science of Javascript you have all the required info to get in there and do your own discovery.

I’m hanging out for John Resig’s new book http://jsninja.com/

I’d suggest you start to dig into the code of js libraries like jQuery and Raphael. You could also look at patterns that can be applied to js so you can keep your code clean and extensible.

Yes, 2nd Edition of “Professional JavaScript for Web Developers”, felgall. And I’m glad I have all of the best ones, or will have! Thanks for the feedback, felgall.

Lawlz. You’re always going on about closures and recursion in his book! :stuck_out_tongue:

I agree. I think it’s a very easy language, compared to VB.NET - It’s just so much simpler and less code to get something working. Which I think will be helpful to beginners to programming and the language itself, because it’s so simple, in terms of what code you need to write to make something work. As opposed to other languages.

That’s very pleasing and encouraging to hear! Thanks for the feedback. Appreciated.

Thanks for the feedback and recommendation also. Don’t worry, I’m definately getting it when the new edition is released in May :wink:

That’s the thing though - I haven’t mastered the content in Simply JavaScript and The Art and Science of JavaScript and they don’t seem to be as highly recommended as others such as The Definitive Guide and Head First JavaScript. As I said earlier, I’m not interested in JS Libraries at all at the moment (not even jQuery) and I’m certainly not interested in AJAX either.

I appreciate your comments and feedback anyway. All views and recommendations are helpful to me as I’m a beginner however, I do have clear goals - To master the basics of JavaScript.

xD Would it please you if I started typing lawlz instead of lawl :p?

Still not sure on Christian Heilmann’s book though! :confused:

Andrew Cooper

That’s the right approach. You can’t use a library such as jQuery properly without a good understanding of JavaScript first. Those who try usually end up in a mess because they are using advanced processing when they don’t understand the basics.

Totally agreed, felgall. I’ve gotten as many suggestions as Andrew to try jQuery. Crawl before walking, even if walking is easier.

Lawlz. You’re always going on about closures and recursion in his book!

Cause they’re damn hard. Why are they hard? For the same reason I can’t do math in my head: I cannot hold “empty” placeholders and still remember them when I get to the end. I hear this can be improved with practise, but I was always the kid who needed to do it on paper, or use my fingers lawlz. I can keep the factorial one in my head but once I get to something like the typical “reduce”/“fold” it’s more than I can keep straight at the moment.
And yes I believe beginners should know and understand those. Right now in my JS for my company’s page, I’m trying to get a function OUT of a loop so I can use it elsewhere… bleh.

Lawlz is my BESTardisation of LOLSPEAK so I guess it doesn’t matter what you choose. I’m pretty known for it, though. People might think you’re me in other places.

You’ll find that the Head First book is a better one to read before the Definitive Guide. The former one gives you a running start, by giving you interesting and entertaining concepts with which to help you learn the overall shape of the landscape. The latter one is incredibly detailed and helps to fill in any gaps of knowledge that you might have had, but it’s heavy going indeed and reminds me of a dry and dusty tome.

That’s the thing though - I haven’t mastered the content in Simply JavaScript and The Art and Science of JavaScript and they don’t seem to be as highly recommended as others such as The Definitive Guide and Head First JavaScript. As I said earlier, I’m not interested in JS Libraries at all at the moment (not even jQuery) and I’m certainly not interested in AJAX either.

I highly recommend them.
Don’t get into the trap of reading for the sake of reading - It will actually prevent you from really absorbing the content of future books and hinder your learning.
Every good book requires at least three readings, once fast, one very thorough reading (taking notes, experimenting) and another quick read.

Whilst I agree with what you have written, my advice was not to use a library.
I suggested that after really absorbing Simply Javascript and The Art and Science of JavaScript he has all the basics as well as advanced concepts under his belt.
He should be ready to start looking at the source of libraries and find out how professional js developers write and structure their code.