Book Reviews

Book Reviews

Head First Ajax

When you read Head First Ajax, it helps if you know that the Head First series doesn't read like books from any other series. I have sort of a love-hate relationship with Head First because learning from this series is somewhat like learning from a comic book: Everything is pictures, word balloons, and arrows. If the old Batman TV series from the 1960s taught technology courses, they would look a lot like the Head First books. The book is written for the beginner who has only basic web design and development skills: HTML, CSS, and a smattering of JavaScript.

The book starts the beginner with the definition of AJAX. Keep in mind, it's a definition that is presented in a cartoon strip. Plenty of pictures and arrows to break up what would be an otherwise dry "What is AJAX?" schpeel.

As I progressed through the book and worked (or played) my way through the various exercises, word games, and other teaching "methods," I could see how these methods would work because I discovered myself falling somewhat into step with what was being presented. Better yet, I found that Riordan's content presented a number of solid designs that showed me both the right and wrong way to solve web development challenges. I say "wrong" not in that the book teaches incorrect methods; rather, it teaches the reader what to avoid as well as what to use.

If you have gaps in your understanding of JavaScript and DOM, this book should help fill them in. It tends to be a little heavy on object-oriented programming for the beginner, but that might put off only some readers. The series, by definition, is light when it comes to code examples, but it really nails down the underlying concepts. Some books teach their readers how to perform tasks without showing the underlying principles. Head First Ajax shows you the whys and wherefores of AJAX, as well as giving you some practical exercises to start off – you'll just need to get used to the "Pow!" and "Bang!" effects.

Rebecca M Riordan

Paperback, 527 pages

O'Reilly Media, Inc., 2008

ISBN-13: 978-0596515782

£ 31.79, US$ 49.99, EUR 39.91

Rails for PHP Developers

Rails for PHP Developers is at once familiar to the PHP developer and at the same time presents working with PHP in the Rails framework in an interesting and compelling way.

Rails is a set of tools, in the sense that an auto mechanic or carpenter has a set of tools. The toolset defines the job to be done and organizes the tool user. Rails does that for Ruby, but in actuality, it can do the same for other web development languages, including PHP.

Although the authors sometimes find it difficult to separate the Ruby from the Rails, it is truly written for PHP developers who want to add another set of tools to their collection and employ the unique naming conventions, classes, and database tables associated with Rails. This book is appropriate if you want to use Rails because veteran PHP developers tend to think and solve problems in unique ways that don't apply well to Ruby. Die-hard Ruby developers might suggest dumping PHP if you want to work with Rails, but DeVries and Naberezny show their audience that this is completely unnecessary.

Rails for PHP Developers works in a number of different ways. I've already said that it's for PHP developers who want to add Rails to their tool belts, but it's also a proper introduction to Ruby on Rails in its own right. This text additionally does a very good job at introducing web development in general.

Although the book is of value to the beginner, the target audience is the developer with some experience. This might be Rails 101, but you still need to know PHP and general development practices. In Chapter 1, you hit the ground running, so if you don't know what you're doing as a programmer at this point, you'll get lost pretty fast.

DeVries and Naberezny strike the right balance between no-nonsense developer-speak and keeping the topic fresh and attractive.

Although I don't think that one book ever tells the whole story, Rails for PHP Developers comes pretty close.

Derek DeVries and Mike Naberezny

Paperback, 430 pages

Pragmatic Bookshelf, 2008

ISBN-13: 978-1934356043

£ 25.11, US$ 36.95, EUR 26.23

Beginning OpenOffice 3: From Novice to Professional

I liked two things about Beginning OpenOffice 3 right off the bat: It's written for an audience that is new to OpenOffice.org (which I expected), and it's written as a set of projects based in the real-world (which I hadn't expected). Once upon a time, I'd considered writing a book on OpenOffice.org (OOo). I remember one of the major challenges I faced was trying to decide how to organize the information. With just so much to any full-featured office suite, how do you tell the readers how to do everything? Andy Channelle's answer is, "you don't have to."

The book is organized into two major parts: The Applications and Working Across Applications. The first part of the book is dedicated to introducing the various aspects of the OOo suite: three chapters on Writer, one on Calc, one on Impress, one on Draw, and one on Base. That covers the "big four," and the proportions are more or less correct.

Although people are going to use a word processor most often, I was surprised that Calc wasn't given a little more space in the book. Given the flexibility of Calc, I expected a little more time spent on it.

That said, I was glad to see Writer in the spotlight, particularly its design and automation capacities. What non-OOo users often fail to realize is that OOo apps are not just imitations of Microsoft Office; rather, they provide services that you won't find in Microsoft's bag of tricks, particularly for the price (free). OpenOffice.org isn't a cheap knock-off of Office; it is a worthy competitor in its own right, offering features that do not necessarily have counterparts in Office products.

Part I shows the reader how individual applications work. Part II shows you how they work together and then some. That isn't to say that Microsoft Office applications can't interact with one another. For example, Office 2007 applications interact with unbridled determination, blurring the lines between one utility and the next. However, OOo is not to be outdone.

I was surprised to see the first chapter in this section addressing building web pages. I've seen how Word 2007 and its predecessors have been used to build web pages and have shuddered at the results. I don't even like what most WYSIWYG packages do to the underlying HTML source, and whenever I've been put in the position of creating web content using a word processor, I always have to go back in and pull out all of the unnecessary junk the application has seen fit to insert.

Fortunately, Channelle isn't suggesting building web sites with Writer and defers to Adobe Dreamweaver or KompoZer to approach such tasks. He also admits that the code inserted by Writer in creating web pages is far from "clean," but Writer can be used in a pinch if you need to create one or two static HTML pages on the fly.

Of course, you can use Draw to create and insert any required graphics and use Writer's native tools to manage tables and hyperlinks and create site maps – all within the single interface. If push came to shove, though, I'd rather use a vanilla text editor to create the basic HTML source and use GIMP for my graphics. Collaboration is a big word and a bigger process in this day and age. I speak from experience because I've written two books on Microsoft Office SharePoint Server (MOSS) 2007. I don't mention MOSS frivolously.

In "Chapter 9: Working with Others," Channelle mentions both MS Office 2003 and 2007 practically with his first breath. The chapter doesn't discuss working with enterprise-level collaboration server platforms, but it does show you how OpenOffice.org is the ultimate collaborator.

In any Microsoft Office product, I can't open any OOo document formats, let alone those created by AbiWord, KOffice, and other non-Microsoft suites; however, OpenOffice.org can. OpenOffice.org still struggles with Office 2007 file formats (which I'm sure Microsoft made sure of) but OpenOffice.org does continue to work quite handily with older Office document formats.

Excel and Calc have a tough time with each other because of the complexity of how formulas are handled in each application. Optimistically, Calc can handle about 80 percent of what Excel throws at it, which isn't perfect, but it's not bad either. Trans-application performance between Impress and PowerPoint comes away somewhat better, so have a good time opening up a PowerPoint presentation in OpenOffice.org and freely editing and running it.

I mentioned earlier that the book (and OpenOffice.org) doesn't address server collaboration platforms, but the author does include a section about Calc's "live sharing" capacities, which allow multiple users to do collaborative work on a spreadsheet. Other cross-functional tasks offered in the latter parts of the book include mail merge, creating presentation backgrounds in Draw, and embedding an Impress presentation in a web page.

Installing extensions in OpenOffice.org has gotten a lot better since Sun released Java under an open source license. The extensions, like OpenOffice.org itself, function across all major operating systems, including Windows, Linux, Mac OS X, and Solaris. Nifty extensions included are tabbed windows and OpenOffice.org2GoogleDocs. The book limits itself to providing just a taste of OOo extensions, but it lets you know where you can find out more.

Because OpenOffice.org 3 is still relatively new, it's difficult to review a book on the topic without reviewing the office suite itself. In both cases, though, I'd have to say it's a winner.

OpenOffice.org 3 continues to expand on the fine tradition of open source's premiere office suite, and Andy Channelle has done a great job not only presenting OpenOffice.org to the beginner, but providing a learning experience for the reader, rather than just an extensive list of features. Beginning OpenOffice 3 won't teach you every detail offered by OpenOffice.org 3, but it's a good place to start. By the final chapter, readers will be able to get most jobs they want to do accomplished.

Related content

The previous major releases of OpenOffice.org didn't disappoint, so hopes are high for the upcoming version 3.0 of one of the most important open source applications around. We look at what mouth-watering goodies the new version has to offer.