PROGRAMMER TUTORIALS
solutions to programmer problems

ASP
C#
C++
COBOL
Delphi
HTML
Java
J2EE
JavaScript
JSP
.NET
Perl
PHP
SQL
Visual Basic
XML
View Shopping Cart


Get a FREE Apple iPod Photo

  Books Head First JavaScript (Head First)

Rating: 5 out of 5 stars - Easy to follow and good condition
For the JavaScript beginner this was an easy to follow book with good exercises and explanations relating to things us non-computer geeks will recognize. The book also arrived on time and in excellent condition.



Rating: 5 out of 5 stars - Head First HTML
This is the best series of How To books that I have seen in a while. Great Book for those just beginning to learn HTML.



Rating: 2 out of 5 stars - The Wrong Way To Learn To Program
Having seen the Head First series in stores before and being superficially attracted to all of the promotional blurb about this style of learning being more suited to how the brain "really works", I have to say I really wanted this book to be good. However, after reading through the first few chapters of HFJS I'm inclined to believe that the style is not a good way to learn at all, to the extent that I've decided not to buy any more books in the series (I was planning on getting the C# and Ajax books if all went well with this one).

The whole affair brings to mind the state of education in general today, if I may digress. "Progressive" teaching methods are based on the idea that the formal, "stuffy" way of learning is inferior and that kids learn better sat around octagonal tables partaking collectively in interactive lessons that are crammed with bright colors, jokes and cartoons. Well, for all of the so-called "theory" that says this way of learning is better for kids, what are the results? I'm sorry, but the proof is in the pudding - kids are leaving school without the most basic intellectual skills, with a fuzzy idea of everything, with little structure or discipline, with the idea that accuracy and "getting it right" are not that important. In short, kids are getting dumber. So much for the hailed "progressive" method of learning.

And to be quite frank, this is the way I feel about this book. I'm not a complete beginner, being well versed in HTML, CSS and Python and with a basic understanding of C and LISP - so I was prepared to be a little "patronized" by the softly-softly approach. As it happens, throughout the book I was given to wondering just how on Earth a beginner was going to get a solid foundation in the basic concepts without being confused to the point where they would be inspired to give up altogether.

There are many examples I could give - a good one comes on page 79 when they introduce the "parseDonuts" function. They could have done a lot more to set down the basic structure and purpose of functions - for instance explaining the difference between formal and actual parameters - but they don't. The parseDonuts function is the first in the book to introduce the concept of returning a value, yet they make no reference to this at all here and just presume that the reader will work it out on their own. Of course to anyone who's familiar with another language, "return numDonuts;" will make perfect sense, but I'm not sure that this would not confuse a complete beginner to whom the basic concepts of coding have not yet solidified. A more formal text would also have outlined the concept of substitution to this end.

I turned over the page expecting a mention of the "return" statement at least in brief, but alas there were just more goofy pictures, a crossword, and then on to the next chapter.

Having read my fair share of programming manuals I feel that the most important qualities are accuracy, clarity, unambiguity, structure and readability. Sadly, this book falls short in those areas on a number of occasions. There is nothing worse when learning a programming language, in my opinion, than being confused in the early stages to the point where you're never confident about the foundations you're piling new material onto as you progress. Unfortunately in this book there are many opportunities for confusion, especially for the observant student who notices inconsistency and ambiguity in the text.

For example, on page 93 the author introduces the timer syntax. There are slanted code snippets to illustrate, one of which gives "refresh();" with a pointer indicating that it's purpose is to "refresh the web page". Yet on page 97 in the Q&A section, they reveal that the function to refresh a page is actually "reload()". Not only that, in using "refresh" as an example of an argument of "setTimeout()", not only do they not use parenthesis, as in "refresh()", but they also fail to pass the code in quotes, so what the reader sees is "setTimeout(refresh, 120000);". On the next page, they mention that the code must be passed as text in quotes. OK, so maybe they used "refresh" in the spirit of pseudocode, but the beginner is not going to know this and is liable to feel very unsure of what they're learning if they're observant enough to notice this stuff.

Another hugely important element of learning to program from a book is the act of following, and typing, examples on your own computer. You simply cannot expect to absorb the syntax, style and structure of programming without feeling it "under your own fingers" so to speak. This seems like a no-brainer. The problem with this book is, you're never actually sure when you're supposed to be entering code yourself, and the author gives you no clear indication of a hands-on "plot" to follow. In the chapter on the iRock for example, you're reminded on a number of occasions where to download the iRock graphic from the publishers website - but not within a solid context of actually typing the examples in yourself. This is hard to explain in a review but is something you'll see for yourself if you try the book. I contrasted this fuzzy approach with my experience with the excellent "Missing Manual" guide to CSS for example, in which half of every chapter is a "follow along at your computer" exercise which really does make you absorb and understand what's going on. Also, a vital part of learning is to complete practical exercises yourself. The best example I have come across is John Zelle's "Learning Python - and Introduction to Computer Science", a fantastic example of a book which teaches solid concepts formally while managing to be friendly and interesting. HFJS unfortunately limits itself to crosswords and "fill in the blanks" quizzes which fall far short of the kind of exercises needed to make a student confident about what they're learning.

While I understand the series' basic premise that the brain remembers material that is presented in an interesting way, I think they really do go too far in trying to be wacky and exciting. They've crossed the line from "interesting" into a murky territory in which structure and direction are sacrificed in favor of style. Sure, a picture of a tiger next to some code may help you remember that particular page - but is this really what we look back on when we try to recall later? When I think back to programming concepts I've learned, I picture them in the abstract state in which they exist in my head, and not on the page I originally learned them from. For this reason, I think the purpose of the book should be to make sure the information enters the brain in a structured, logical, accurate fashion - not to serve as a visual "reference" from which to recall things later. It's quite possible to be colorful and humorous and interesting without mixing things up all over the page, in my opinion.

Maybe I'm just too old for this style of learning at 35. Maybe the Head First series is really geared toward high school and college students with low attention spans, I don't know. But what I do know is that to me, programming is not a subject you can learn thoroughly by skimming through a fuzzy maze of vague, hinted at, non-concretes. I gave up on this book half way through because I felt it would actually do more harm than good to my understanding of JavaScript in the long run. I understand that not everyone is the same and that other people think these books are the bees knees, but they are not for me.





Rating: 5 out of 5 stars - Another bullseye from HeadFirst!
Web development is not my primary job so I was looking for something to give me a better understanding of JavaScript without too great an investment of time and money. This book is it! Amazing detail but incredibly easy to follow. The book is simple to scan for overviews of each chapter, which lets users with some background skip what they are already familiar with and jump into sections they want. If you are new to HeadFirst, you are in for a treat. The books build knowledge concept by concept with lots of illustrations and practice to develop increasing skill and then become favored reference sources. My only complaint is that the middle pages come loose from the binding with a lot of use. All in all, I think new and novice users will be thrilled with this book. I can't wait for the HeadFirst book on PHP and MySQL:)



Rating: 2 out of 5 stars - Need more how to and less humor
This book tried too hard to be funny. I wanted more in depth how to and less humor. I am a beginner so I thought this book would do the job but I could only do the examples they gave. I didn't have enough information to improvise after doing an example.

I think a better book is JavaScript Goodies...


page 1 of  6
 1  2  3  4  5  6 


2000-2006 ProgrammerTutorials.com


Top100WebShops.com