Bulletproof Ajax, by Jeremy Keith, is a wonderful guide to using Ajax on the Internet. (I will define Ajax later on in this article.) You receive 200 pages full of demonstration, theory, tutorials, pictures and suggestions. I recommend this book only to persons who are new to Ajax, especially JavaScript.

To begin, I’d like to say that how the author defines Ajax is up for some debate. His simplified definition of Ajax is “a way of communicating with a Web server without refreshing the whole page.” The original writer who coined the term, Jesse James Garrett, didn’t intend for Ajax to be an acronym for “Asynchronous JavaScript and XML” but it became that anyway. Later, Garrett updated his essay making it clear that Ajax was not an acronym. Personally, I agree with the author’s definition and not the acronym. The author gives us some reason to do so also:
- It’s true that most of the new breed of Web applications are asynchronous. That is, interaction happens in the background without tying up the browser. …this isn’t mandatory. It’s quite easy to specify synchronous interaction.
- The X for XML is particularly problematic. It implies that XML is a requirement for Ajax applications. This simply isn’t true. To be fair, the letters XML also appear in the word XMLHttpRequest- the core technology used in most Ajax implementation- but XMLHttpRequest doesn’t sound very cool.
Under the author’s definition, more technologies than just JavaScript and XML fall under Ajax: Flash, Java Applets, Frames, iframes and XMLHttpRequest. The Ajax the author speaks of in the book, is one that uses all these methods but especially XMLHttpRequest. So however you define Ajax, remember that what it includes is still a matter of debate. Personally, I run into a web geek every now and then and I have to reaffirm my position when I say “Ajax isn’t an acronym.” You should see the horror in their eyes. Ajax is just a cute term for a set of technologies that aren’t particularly new, but it coins a phrase that is a new paradigm on the Internet - remote scripting.
Now that we got that definition out of the way (or did we?), here are the topics in the book you can expect to cover: What is Ajax, JavaScript and the Document Object Model, XMLHttpRequest, Data Formats, Hijax, Ajax Challenges, Ajax and Accessibility, Putting It All Together and The Future of Ajax. Again, I recommend this book strongly to beginners of Ajax but to people who are widely versed in doing numerous things on the Internet (like mastering CSS, XML, some server-side scripting, etc).
2 Tips:
- A lot of people turn off JavaScript or Flash because of annoying advertisements. I think they’re annoying too, but I also know that by turning off these features I am missing out on a lot of great things on the Internet. Leave them on! Instead, ask your network administrator to block advertisements that come from IP addresses or domains. Right click on the ad and see its location, send that in to your admin. If it’s a Flash ad, check the source of the page and look for the address in the source, usually found within JavaScript or embed tags. Not only do you allow yourself to view well-used Ajax, but you prevent those ads from cashing in on your visit!
- When using JavaScript or Flash, you always run into the problem of figuring out alternatives if the user has them turned off. Instead, expect them to have either turned off. For Flash, use Adobe’s Flash detection kit, but append more to it. If JavaScript, append more to it. What will we append? Well, use server-side scripting. If the user has JavaScript and/or Flash turned off, create alternative data for them to view via scripting. This will not make the user have to click to view the “alternative HTML site” or “alternative pages”. Moreso, search engines will thank you for having something to cache on the same pages. You will receive a better ranking score and your visitors will thank you for not making them click more. Just keep in mind to make sure that your alternative data shows EXACTLY what would have been displayed via Flash, no more or less. What’s so great about server-side scripting is that you lessen the load the client will have to do, you let that scripting determine who’s looking at the site and output the right content. From that point onward it’s a pleasure cruise for the user!
Buy it Amazon: they rated it 4.5/5 stars.
Sections
Top Rated Books
Subscription Offers
Editor
Louisa Nicholson
