Creating Applications with Mozilla by David Boswell, Brian King, Ian Oeschger, Pete Collins and Eric Murphy
Next to Linux, Mozilla is probably the most well-known and widely discussed open-source project. O'Reilly's Creating Applications with Mozilla appeared hot on the tail of the official Mozilla 1.0 release. It is notable for a number of reasons: 1) the entire text is available on-line (books.mozdev.org/chapters), as the book was written under the Open Publication License, and 2) it explains why the 1.0 release of Mozilla took so long to make an appearance.
This book shows that Mozilla is much more than a browser. In addition to offering capable e-mail, newsgroup and Web page composer applications, Mozilla contains a sophisticated Web client development environment. A series of technologies allows programmers to interact with and control Mozilla, and at slightly more than 450 tightly packed pages, Creating Applications with Mozilla is the definitive reference to these technologies.
The development framework is strong, but the book has some weak points. The title led me to believe the book was of the how-to, tutorial type, so I was a little disappointed to find this was not the case. Some tutorial material is presented, but it is much more of a reference book. Readers should be already familiar with at least JavaScript, CSS and XML. Without a background in these technologies, they may struggle with Creating Applications with Mozilla.
I would have welcomed more extensive use of screenshots, especially in the chapters that describe creating and customizing Mozilla GUIs. The authors rely on textual descriptions such as, “the icons appear to the left and right of the bar, while the flexed text panel takes up the remaining space.” Pictures would have been better.
There's also some confusing language, especially in the earlier chapters. A particularly bad example of this is a sentence taken from the discussion of Box Attributes on page 63: “But there are also CSS versions of these properties that use the prefix box-pack becomes box-pack when it's defined in CSS, for example.” This sort of thing should have been cleaned up during copy editing. However, the entire text (plus errata) is available on-line to allow potential purchasers to try out the book before buying it.