Amazon.com Customer Reviews
Pretty good, but lacking something - Review written on January 07, 2007
Rating: 3 out of 5
1 customer found this review helpful, 9 did not.
I bought this book because I am a web designer, but I'm terrible with Javascript, so I intended to try to figure it out a little bit with this book. It seems promising, as it goes from the ground all the way up to Ajax, but it uses the annoying practice of code snippets interspersed throughout the text, which can get kind of confusing.
I'm also not positive all of the examples work, although that could be my own error. It's definitely not a bad book, but it is probably slightly over the heads of individuals such as I.
Poorly organized, sloppy examples, and HEAVY emphasis on accessibility standards compliance - Review written on November 03, 2006
Rating: 2 out of 5
16 customers found this review helpful, 2 did not.
I've had very positive experiences with Apress in the past, but I was really disappointed with this book....and it sounds like some of the other reviewers share my frustrations.
The example programs are sloppy and have errors (yes, the versions posted online work, but it's a massive pain in the a$$ to stare at the book for twenty minutes only to realize that there's an error in line x and line y doesn't even need to be there...and it's a bit unfair to expect the reader to know when to stop staring at the book and check the online version to see if it looks any different). Additionally, the author frequently dumps large amounts of code on the reader and instructs them to ignore parts (or to "ignore everything except for"). It happends over and over, and it gets annoying.
Also, from the beginning of the book, there is a heavy emphasis on web accessibility standards. Ensuring that your site can be accessed by visually impaired or otherwise disabled users is fine and great, but the examples get bloated because of it and, imho, it really gets in the way of learning the basic concepts.
If you want to learn Javascript and DOM, I'd recommend that you go to the Mozilla online docs for Javascript and DOM. The documentation and examples there are first rate. If, after learning Javascript and DOM, you want some recipes that *might* be helpful in ensuring compliance with accessibility standards, this book may be for you.
Great book to learn how to do JavaScript properly - Review written on September 27, 2006
Rating: 5 out of 5
10 customers found this review helpful, 1 did not.
Up until now, most JavaScript books I have seen have not really described how to be a good JavaScript programmer - most of them have lead by example (which is how many JavaScript programmers I know learnt JavaScript). Unfortunately learning JavaScript by simply viewing other people's code without understanding why it was written the way it was could also lead to learning by bad example.
Christian Heilmann's "Beginning JavaScript with DOM Scripting and Ajax" is different - it teaches the reader the concepts that will help them to become a good JavaScript programmer. Perhaps more importantly, it teaches how to use JavaScript, CSS, DOM, and Ajax in a degradable manner, so that all visitors to your web site will be able to access it. Christian explains not only the guidelines for developing good code, but the reasons why it is important.
Christian's passion for creating maintainable, standards compliant, usable websites is clearly visible in his writing. Throughout the book he reiterates key issues that good programmers should know, and demonstrates them in his code.
This is an excellent book on JavaScript, and one that I will thoroughly recommend to anybody new to JavaScript programming. I also recommend it to anyone who plans to make their website more accessible to a wider audience (and who doesn't want that?).
What a pleasant surprise! - Review written on September 14, 2006
Rating: 4 out of 5
8 customers found this review helpful, 1 did not.
What a pleasant surprise, amongst a development landscape full of JavaScript libraries to actually find: Beginning JavaScript with DOM Scripting and Ajax by Christian Heilmann. To state it boldly, this is the JavaScript book we have all been waiting for (though, John Resig and Jonathan Snook both have books coming). Why? Because the author actually uses modern object oriented (Object Literal) coding principles in the books examples. As well, the book has a progressive enhancement mindset, and explains the difference between several implementations of the same functionality, based on accessibility. All of this is done without the use of a JavaScript library! However, in a way the author provides his own little library of helper functions, which is certainly more digestible than Prototype, Dojo, YUI or jQuery. The author even dedicates the last chapter to third-party examples, which demonstrates the usage of the YUI and jQuery JavaScript libraries.
Anyone trying to bridge the gap between CSS, HTML and JavaScript will not be disappointed with this read. It should be stated however, that the term "Beginning" in the title of this book is a little misleading. I would not recommend this book to a beginner. It's a fast-paced book, spending most of the time in the trenches of JavaScript implementation (code examples). If you are a beginner, build a foundational understanding of the language before you take on this book. If you're looking for a great book to compliment this one, I would recommend the SitePoint book DHTML Utopia.
A different style than most JavaScript tutorial books... - Review written on August 24, 2006
Rating: 4 out of 5
33 customers found this review helpful, 1 did not.
This JavaScript tutorial is a bit different than most I've had the opportunity to review over the years... Beginning JavaScript with DOM Scripting and Ajax: From Novice to Professional by Christian Heilmann. It will probably play well to the serious developers who want to come at JavaScript from an object-oriented background...
Contents: Getting Started with JavaScript; Data and Decisions; From DHTML to DOM Scripting; HTML and JavaScript; Presentation and Behavior (CSS and Event Handling); Common Uses of JavaScript: Images and Windows; JavaScript and User Interaction: Navigation and Forms; Back-End Interaction with Ajax; Data Validation Techniques; Modern JavaScript Case Study: A Dynamic Gallery; Using Third-Party JavaScript; Debugging JavaScript; Index
Most JavaScript books that try and teach the language usually do the "Hello World" approach, have you put a date on the web page, etc. All OK stuff, but pretty common fare. Heilmann seems to treat JavaScript as a legitimate coding language, with plenty of power and features to allow you to code solutions based on current accepted techniques. For instance, he dives into DOM manipulation pretty early, so you end up seeing quite a bit of material using document.getElementsBy statements. In most JavaScript books, that's either relegated to the later chapters, or skipped altogether. Breaking up the learning by presentation and behavior also helps those who are more in tune with MVC-style design. JavaScript *can* be built in such a way that it's maintainable and segmented, and Heilmann does a very nice job in teaching that style. I also really liked the chapter on debugging, as that's one of those things that I find extremely frustrating about JavaScript. He presents some great options that top my normal "scan the code and see if anything looks wrong" method of finding JavaScript errors...
My only "quibble" with the book is that I don't think I'd recommend it for the pure novice. Perhaps a novice JavaScript developer with solid development skills in other areas... I think a pure novice to coding in general AND JavaScript in particular would quickly get lost here...
Definitely a good read if you have the basics down, and it will likely improve your JavaScript skills and coding techniques...
From Novice? No. - Review written on August 22, 2006
Rating: 1 out of 5
9 customers found this review helpful, 23 did not.
I am a novice with the use of JavaScript in settings outside of Adobe Acrobat. I thought this book would be perfect to help me translate my knowledge from Adobe Acrobat JavaScript to using JavaScript in website development, as well as help me to have a beginning level of understanding of JavaScript so that learning ASP might be easier. I was wrong.
This book is very disorganized. While giving many examples, it introduces new elements in the JavaScript without any explanation as to what they are or what they do. I found many of the new elements were eventually discussed in future chapters, but what good is that? Understanding the foundation is important to building one's knowledge in a subject and this book seems to ignore such a fact.
Also, explanations given are quite technical and hardly deep enough to actually understand the code. Unfortunately, the author also bad grammar (is that the norm for computer programmers?). Not good for the novice.
Many examples are given, but we see the results of very few of the examples. Most examples end with variations of, "The new property did X, and the other properties did Y." Few examples go into a little more detail as to X, while most do not go into any details as Y. In other words, when one element/property/object is introduced and two are used in the script, only the one element/property/object introduced is explained.
The term "primitive" was never explained. The "Date" object examples used many new script items and the explanations were vague, inadequate and useless.
The script example using the random number generator to mimic the rolling of a die (page 38) implies that multiplying 5*0 will never result in 0, but multiplying 6*0 will result in the occasional 0. A little later, the author includes adding 1 to the 5*random number, but this example shows the lack of order with explanations and examples which is endemic to this book.
I am unsure if I will get another book on JavaScript because this book shows me nothing that JavaScript can do which other more accepted technologies cannot do with more programming ease, greater functionality or greater assurance that the result will appear in browsers the way which was intended.