This is your guide to building Internet applications and user interfaces with the Mozilla component framework, which is best known for the Firefox web browser and Thunderbird email client. Programming Firefox demonstrates how to use the XML User Interface Language (XUL) with open source tools in the framework's Cross-Platform Component (XPCOM) library to develop a variety of projects, such as commercial web applications and Firefox extensions.
This book serves as both a programmer's reference and an in-depth tutorial, so not only do you get a comprehensive look at XUL's capabilities--from simple interface design to complex, multitier applications with real-time operations--but you also learn how to build a complete working application with XUL. If you're coming from a Java or .NET environment, you'll be amazed at how quickly large-scale applications can be constructed with XPCOM and XUL.
Topics in Programming Firefox include:
An overview of Firefox technology
An introduction to the graphical elements that compose a XUL application
Firefox development tools and the process used to design and build applications
Managing an application with multiple content areas
Introduction to Resource Description Files, and how the Firefox interface renders RDF
Displaying documents using the Scalable Vector Graphics standard and HTML Canvas
The XML Binding Language and interface overlays to extend Firefox
Implementing the next-generation forms interface through XForms
Programming Firefox is ideal for the designer or developer charged with delivering innovative standards-based Internet applications, whether they're web server applications or Internet-enabled desktop applications. It's not just a how-to book, but a what-if exploration that encourages you to push the envelope of the Internet experience.
Ken Feldt is a systems engineer and software developer with background in bit-slice raster image processor design, real-time process control, USB development, digital video workflow, and consumer-grade video authoring techniques. He holds undergraduate degrees in electronics engineering technology and an MBA in marketing from Canisius College in Buffalo, NY.
On the technical side, Ken work with various XML applications for science and engineering, currently building a business utilizing XUL and SVG to facilitate technical communications. His broader focus includes exploitation of various XML vocabularies to move the IT world more closely to the disciplines of science and the arts.
He enjoys public speaking (once competing in a humorous speech contest for Toastmasters International and actually winning a few rounds), and takes particular pleasure in the 'old world' skills of oratory, rhetoric, and creative writing.
Ken's writing objectives focus on topics that help experienced engineers and software developers ramp up on new technologies, always trying to look at things from the perspective of the subject matter novice.
Ken also takes an interest in following the trail of how new technologies affect the social and industrial fabric of communities, and he is fully engaged in studying how innovation and entrepreneurship are both required in order to drive successful new business models.
The animal on the cover of Programming Firefox is a red fox (Vulpes vulpes, Vulpes fulva). Found throughout Canada, Alaska, most of the contiguous United States, Europe, Asia, and parts of northern Africa, the red fox is the most widely distributed wild carnivore in the world. Its habitat includes forests, tundras, prairies, farmlands, and increasingly, suburban areas. Red foxes are identified by their reddish-brown coats, white-tipped tails, and black ears and legs. Although American red foxes are typically smaller than their European counterparts, the average size of the red fox is 36-42 inches long (including its 15-inch tail) and 16 inches tall, weighing approximately 15 pounds. Red foxes are solitary and do not form packs like wolves. For most of the year, theysleep concealed in high grasses or thickets. The exception is breeding season, during which a fox pair establishes a den, often taking over one created by rabbits or marmots. Foxes may dig larger dens in the winter, or during birth and rearing oftheir pups. The same den is often used over a number of generations. With tunnelsconnecting the main den to other nesting sites, the animals generally remain in thesame home range for life. Red foxes feed on insects, earthworms, small birds and mammals, eggs, carrion, and vegetable matter. Although they have a reputation for raiding chicken coops, they're often beneficial to farmers because they keep the rodent population low. They have a distinctive method for catching mice: they stand perfectly still, listening and watching intently, then leap high, bringing their forelimbs straight down to pin the mouse to the ground. However, because of their small size, red foxes are not only predator, but also prey: they're hunted by larger mammals such as wolves andbobcats, and pups are often killed by birds of prey. Humans, who kill red foxes fortheir fur and for sport, are the red fox's biggest predators. In 2005, foxhunting-apopular sport in Europe since the 14th century-was banned in Great Britain, andmost fox species continue to flourish. The cover image is from the Dover Pictorial Archive. The cover font is Adobe ITC Garamond. The text font is Linotype Birka; the heading font is Adobe MyriadCondensed; and the code font is LucasFont's TheSans Mono Condensed.
I just received the book. I saw the tremendous amount of code in there. I searched Oreilly's web-site for this code, but did not find it. Perhaps it is in the 'free' Safari service? But I can't imagine how anybody would dare to call a thing 'free', if he demands personal data before enabling access to it, without ever saying what he eventually will do with the data.
Sorry, Oreilly, hate to be so negative, but I've come to expect a lot better than this.
When I chose this book, I was expecting the quick, pithy introduction to the subject that I am used to from the many OReilly books that I have read and profited from in the past.
However this book makes a number of critical mistakes.
It is far too closely tied to the example application that is developed throughout its course. I want to learn XUL and firefox, as advertised on the cover.
I shouldn't need to understand and install PHP, Apache and MySql in order to get the sample application up and running. In any case, the hasty explanations of these peripheral technologies whould not,IMHO, have been enough to get the uninitiated up and running.
In the text there is way too much code listing which makes it very hard to follow and rather a tedious read.
Worst of all, the code samples on the web-site are extaordinarily skimpy. I'm used to being able to spend a couple of hours reading the first few chapters of an OReilly book, then using the sample code as a quick-start to building my own apps. It was was not possible with this book. I read up to the end of chapter 6 then downloaded the source code hoping to quickly run it and adapt it to my own usage. However there was no useful relationship between the chapter content and the content in the example source code.
Unfortunately I really feel like the time I spend reading the book has been wasted. I hope that readers new to OReilly will understand that this is not up to their usual world-beating standard.
Oriented toward Firefox as an Application Framework
By Colonel Nikolai
Comments about oreilly Programming Firefox:
This book covers a lot of stuff about developing applications on the Gecko-based runtimes from the Mozilla foundation. If you were looking for a definitive book for developing Firefox extensions (AKA "add-ons"), this isn't quite it, but it will certainly help.
There are topics covered that will help you in add-on development, like how to use XPCOM wrappers and nsServices* correctly and what they can do, but they are more tailored to people who would likely use Mozilla as a basis for a desktop application.