Amazon.com Customer Reviews
Shines over the rest ... - Review written on April 22, 2007
Rating: 4 out of 5
5 customers found this review helpful.
Somehow I got hold of my first book on AJAX: Head Rush Ajax (Head First) and sure it gave me an intro to XMLHttpRequest - but that's all it did. I browsed through the informal/conversational writings of the book in one evening. And wondered, is there all to it? The current web-world is spinning around Web2.0 and AJAX technology - there must be more than that. Then I went back to the store and picked this book up - I am glad I did. It covers many more areas that an AJAX programmer must equip himself/herself, topics relating to MVC pattern, working with the server side programs and performance, security, as well as the basic topic: building standalone RIA using CSS, DOM and DHTML.
This one definitely shines over the rest on the topic, however, for a hands-on programmer (that's me), I would appreciate more code samples will help.
So Clearly Written! - Review written on January 12, 2007
Rating: 5 out of 5
5 customers found this review helpful, 2 did not.
I'm a self-taught webmaster. The only languages I really "know" are html, css, php and mysql, and I'm not exactly a guru in the latter two. I do have a mere acquaintance with javascript, but I can't code it.
The reason for stating my background is that I found David Crane's (et al.) book "Ajax in Action" possibly the easiest-to-understand programming book I've ever read. He really has the talent of clear explanation, starting from the most basic knowledge. For instance (although it is not his best explanation) he takes the time to cover the basics of http headers for people who aren't familiar with the most fundamental knowledge of http, something you must know to use Ajax.
I have never before really understood the "DOM", or why it could possibly be important, at gut level. Crane accomplished this in a couple of pages. (As a happy side-effect, this explanation really clarifies the XML DOM and XSLT/XPath. In fact, Crane's explanations clear up all kind of confusion in a wide range of other areas.)
The first part of the book takes you through the most basic steps of Ajax. It clearly explains DHTML -- another subject I had considered utterly unimportant to my work -- and having done so, makes Ajax much easier to grasp. He makes the formerly mysterious "iframe" as easy as pie to grasp.
There is none of the constant heading off on tangents, repeated backtracking, or introducing of concepts that are explained later, which characterize most web-programming books. He states a principle, then states the code that derives from it. The method is so clear that even I, with only the most primitive grasp of javascript, am able to understand exactly what the javascript is doing is the examples.
He does spend a lot of time covering the advanced subject of good coding practice, but at least you can understand what he's saying, even if you work on comparatively small projects and thus the coding-practices advice is largely irrelevant to your work. At least these comments on "good code" will improve your work, although the benefit to the smaller website is marginal.
I highly recommend this book to a wide range of people: From anyone who wants to understand the basics of Ajax and has at least a passing acquaintance with javascript and at least one server-side scripting language, to the expert specialist looking to improve his Ajax coding for a major website.
(In fact, if you just want to understand the basis of DHTML, or various faces of XML, or don't know what an "iframe" really is, this book is worth the price just for that -- and you will have a good Ajax text when you decide to learn about it!)
The second part of the book is four complex "recipes" for specific Ajax applications. I have little use for these at the present. Again, however, I had no trouble understanding them, even though the first one uses VB Script -- and believe me, I neither have nor want a even a scrap of knowledge about VB Script. I feel confident that I could rewrite the code for this recipe, however, using PHP instead of VB Script; once again, this is due to the clarity of the presentation.
This book will answer questions about design and refactoring, security, speed and system resources for Ajax applications - Review written on June 29, 2006
Rating: 5 out of 5
4 customers found this review helpful, 1 did not.
If you are looking for some Ajax code to copy and paste into your webpages, this is not the book for you. But if you are creating Ajax web applications on a large or small scale and need to consider such aspects as design and refactoring, security, speed and system resources, then this book will help answer some of these questions. Although the authors, Dave Crane, Eric Pascarello and Darren James, discuss mostly the client-side of Ajax, their approach for this book is to re-teach web programmers away from the standard/classical webpage and introduce a new way for the server, browser and webpage to work together through Ajax.
The first part of the book concentrates on what Ajax is and how it differs from standard/classical web programming. The authors discuss the four core technologies of Ajax (JavaScript, CSS, DOM and XMLHttpRequest) concentrating on the different ways each is used and how they work together in an Ajax application. Ajax takes the concept of separation of tasks to an advanced level.
Once you are familiar with this new approach to these four preexisting technologies, you are ready to work on refining the coding process. Ajax uses a larger amount of JavaScript compared to classical webpages and the webpages are refreshed less often. The author's approach to managing a large Ajax code base is by design framework and refactoring which is a fancy way of saying they teach you to write small, reusable chunks of code where each chunk has a specific task. They take this code component framework further by using the Model-View-Controller architecture which separates an Ajax application into three parts. The Model is the part that performs the task and the View is the part that presents the results. The Controller is the liaison between the other two. By keeping these parts separate, your code is more reusable and more easily maintained. Changes to one part do not directly affect the other part.
With Ajax, the user does not have that familiar "click and wait" routine as the webpage refreshes to reflect changes. With Ajax, as the information is passed to the server and data is returned to the browser, there is no need to refresh the webpage. Therefore we need new ways to keep the user informed as to the process. A few of the new visual feedback components discussed here are the status bar, pop up dialog and inline highlighting. All of these happen asynchronously.
Many books do not address the topic of security. One thing I liked about this book was that the authors discuss potential security issues when using Ajax and several possible ways to close these security holes. Another area covered was performance issues such as speed and system resources. First you learn ways to monitor the performance of your Ajax application and then how to analyze and improve your code.
The book finishes with five sample projects which are built step-by-step. The first is an Ajax web form. In this project you learn how to use Ajax to link form input fields in such a way as to pre-populate the values (choices) in the form fields. The choice made by the user in one form field causes the values for the second field to be updated as necessary. This can be done without reloading the webpage because the two fields are linked and Ajax does the updating in the background. Next you learn how to create an Ajax type-ahead suggest feature (such as the Google Suggest) and ways to possibly improve on this using an object-oriented TextSuggest component. Moving from forms to more advanced user interface features, you will learn how to create an Ajax portal project such as A9.com, an Ajax based live search system and how Ajax can work with external RSS protocol instead of a server.
The authors first walk you through coding these projects and then show you how to refactor each into reusable components. When you have finished, you should have a code library that you can apply to any Ajax web application.
Dave Crane is a computer programmer and simulation modeller. Eric Pascarello is an ASP.NET developer and the author of JavaScript: Your Visual Blueprint for Building Dynamic Web Pages (2nd ed.). Darren James is the architect of the open source Rico project.
a must buy book - Review written on May 11, 2006
Rating: 5 out of 5
15 customers found this review helpful, 7 did not.
I have bought
Ajax Patterns and Best Practise (accademic),
Foundations of AJAX (accademic),
Professional AJAX (pragmatic)
and Ajax in Action (pragmatic)
Ajax Patterns is good at telling you the kind of patterns to use for different solutions, where as Ajax in Action is a little lighter here but after each chapter the is a Refactoring phase.
The "accademic" books are a too much up their own butts, like I am more OO than you. Like any new Fad, you will always have the scolars/purists padding out a point. The pragmatic books seem to be by real world developers, so you have less include files, better formed objects and useful samples. The WROX download samples are missing so you will have to contact the webmaster. All four books are good in their own way. Eg Patterns is good for designing data factories. None of then cover ASP3.0 some do Java, PHP or .NET for server side activies. on two books cover XML and only In Action covers SOAP and webservices. The others just use JSON which is not supported in ASP but well in php/ruby/js etc. "Ajax Patterns and Best Practise" is good if you are planning a large project and developing a in house tool kit. But "Professional AJAX" and "Ajax in Action" are ones I use all the time.
CLEANING UP WITH AJAX!! - Review written on May 09, 2006
Rating: 5 out of 5
4 customers found this review helpful, 1 did not.
Are you a professional enterprise developer? If you are, you're in luck! Authors Dave Crane, Eric Pascarello and Darren James, have done an outstanding job of writing a book that explains how to distribute the application between the client and the server, while retaining the integrity of the system.
Crane, Pascarello and James, begin by discussing the fundamental differences between Ajax and the classic web application, how to think about usability, and other conceptual items. Then, they emphasize where the technology is used differently, or behaves differently, as a result of being part of Ajax. The authors continue by introducing the third main theme for this book, managing the Ajax codebase. Next, they look at ways of keeping your code clean on the client itself, applying the old web work-horse, Model-View-Controller, in a new way. Then, the authors look at different ways of communicating between the client and the server and how various types of frameworks can be adapted to work with Ajax. The authors continue by addressing the user experience, and take an in-depth look at ways of keeping the user informed while asynchronous tasks are executing. Next, they look at the issue of security in Ajax from a number of angles. Then, the authors discuss that other showstopper: performance. They also look at a simple way to give the user a richer experience by enhancing HTML forms with Ajax. The authors continue by showing you how to implement a type-head and fetching data from the server in response to user keystrokes. Next, they explore the wider possibilities of Ajax user interfaces. They also show you how to develop an Ajax-based search system and demonstrate the power of client-side XSLT as a way of turning raw XML data into formatted, styled content. Finally, they present an Ajax client without a back-end implementation.
You'll learn in this most excellent book, how to ensure your application is flexible and maintainable. So, if you are a web developer who has prior experience with web technologies, this book is for you!
excellent book for those on a deadline - Review written on May 06, 2006
Rating: 4 out of 5
7 customers found this review helpful.
(brief disclaimer: i am acquainted with one of the authors, and have corresponded with him for a number of years)
The authors of Ajax in Action state in their introduction that the book is not intended for beginning programmers, or for those without JavaScript experience. This is a warning worth heeding: members of either group will find themselves at a loss with this book.
However, that's because the book does what it says on the tin; it gets right to the core of Ajax, and very quickly. After a brief explanation of what Ajax is, and where it comes from, the authors move onto what you can (and cannot) do with Ajax, and from there on, it's all "how", with extremely practical examples.
And that's perhaps the greatest feature of this book: it's practical examples, includin word-completion and live searches. And the book's guiding philosophy, "getting it working first, then make it look pretty", is sure to be appreciated by those of you have suddenly found yourselves working on a web app with a deadline. To that end, there's also discussion of a few of the more popular Ajax frameworks and libraries, and how to get started with them.
The book also contains two helpful appendixes: one of useful tools for those working with JavaScript, and the other covering important aspects of JavaScript itself. Finally, the book has a reasonably complete list of available Ajax frameworks and their talking points.
Combine the above with the authors' clear language and understanding of the topic at hand, and Ajax in Action becomes an excellent book for those needing to get up and running quickly.
a great book for programmers - Review written on April 22, 2006
Rating: 4 out of 5
11 customers found this review helpful.
I have to say, I've been extremely impressed with all the Manning books I've read. These books remind me of O'reilly books back in the day. Ajax in Action is no exception, although it was not what I was expecting. To be honest, I didn't know what I was looking for in an Ajax book, but I looked through many of the latest crop of books and chose this one based on the reviews I've seen people give it and the strength of the imprint.
This book, and more books like it, are exactly the sort of books that are so hard to find for scripting languages, it isn't primarily a book about language or syntax, but a book about programming. They spend the first half of the book discussing techniques, referencing heavily Model-View-Controller and the Gang of Four's design patterns (which is also must read!). If they mentioned and showed their process of refactoring one more time in the book, I would have had to put it down to wipe away the tears of joy.
The second half of the book walks through several examples of application building. The examples are clear and useful. Their thought processes are well explained and even when you don't agree with the way they are doing something, it is really beneficial to learn why they do things the way they did. And their process of starting broadly and then refining and refactoring each example is extremely helpful to see how one can actually put into practice these techniques in javascript.
This book is for someone who already has a decent familiarity with javascript as well as with basic AJAX principles. They cover, broadly, http requests, working with the DOM and CSS, and the event model. But they cover it more as a refresher as well as with an eye towards the best ways to implement them in your programming. They also talk throughout the book and extensively in the very interesting appendices, different toolkits and development tools that one can use with javascript.
There were some downsides, to this book however. I think because of the way they were structuring the book they often introduce a code snippet with some complex logic and hand wave around the complexity until several pages afterwards when they get to the section where it becomes the topic of discussion. If one isn't immersed in javascript it can become a bit difficult to separate what should be obvious and what they will be talking about later.
They also spend a lot of time and space on the server side of things, giving examples in a several languages (although they give very short shrift to perl). I'm not sure that that is overly helpful, I think they should have assumed that you knew the server side language and simply referenced what the server side should be returning. The scope of the book simply didn't allow them to go into depth with these languages and if you can program the language already the examples were uneccessary and if you don't know the language it wasn't enough for you to usefully do anything with them.
But those two problems are far outweighed by all the other goodness they've packed into this book. I highly recommend this book to anyone doing any javascript development.
Wordy, but still one of the best there is - Review written on March 16, 2006
Rating: 4 out of 5
10 customers found this review helpful.
This is the most systematic book on Ajax usage and patterns I've seen so far, giving you way more than just the technology overview and recipes. I also liked the very clean and thorough approach to JavaScript coding emphasized in an Appendix (which is, BTW, also one of the best JavaScript texts I've encountered).
Unfortunately, this book is also one of the wordiest I've read recently, occasionally giving you the feeling the authors just had to reach a certain page count, so they go into minor details and explain them in great length, while in other cases they just skip important topics they don't like (for example, using IFRAME POST instead of XmlHttpRequest).
It did not have much explanation on code level - Review written on February 27, 2006
Rating: 3 out of 5
13 customers found this review helpful, 5 did not.
This book does talk about ajax, which is good. On the other hand, after 200 pages you still see the planet example, which is simple, not finished. If you don't need write code and you don't need to put ajax in a web site, this is a good book for you, which talked a lot concepts. If you want truely develop ajax on a cool site, you would be disappointed by samples in the book (too simple) and few explanations of codes that are relevant. For example, the book's context is somehow disconnected from the samples downloaded.
To find if this book is right for you, I strongly suggest that you read the book in a local bookstore before you buy it. Even download the source code from book web site and set up to run the examples, which is simple and may take a couple of hours to set up. Or you run those examples online on Internet sites such as www.usanalyst.com (for registered users only. It may take 20 seconds to join).
The first chapter or two were good. If you look for something that can jumpstart you in real projects, see the screenshot of the planet example and how this book spend half of pages to explain it. However, I do understant why the author spend much time on old patterns -- There are many guys out there who were not conviced about Ajax, the author want some buyins. But, Ajax is about making money and state of the art (because speed is the most important issue, not a bulgy design). If those guys don't want make money from ajax, that is their lose. They will miss the next revolution on internet.
John the Builder, www.usanalyst.com (Run Ajax book examples online at www.usanalyst.com. It may take 20 seconds to register).