Mozilla's goal from the start was to support and adopt web standards for content. For example, it was the first browser to have nearly complete support for CSS1 and CSS2, while CSS3 is currently being factored in incrementally. Firefox does XML well, not just with content but using different syntaxes behind the scenes, such as RDF. Standards are important; not just because they ensure interoperability and a better user experience, but because they lower the deployment cost for websites. Think of a world where you don't have to test your pages in many different browsers or write hacky workarounds for inconsistencies. Many web developers dream about this. Early reports and previews of IE7 show that there will be greater standards support. This can only be a good thing for web developers, who for many years have been forced to write different versions of their sites to accommodate different browsers. Apple's Safari has a high commitment to web standards, as does Opera. Put all this together, and it means greater interoperability between web services and applications. Ultimately, the user will feel the benefit, too.
Firefox has some excellent tools built in for debugging websites. The JS Console will report any errors and warnings in your script. The DOM Inspector allows you to look at every node in your document to ensure that it is structured the way that you want it. There are many third-party extensions for web developers that aid testing enormously. There are many, many, preferences available for developers and users alike to tweak the way the browser behaves. Type about:config into the location bar and you will be exposed to hundreds of settings. (Warning: make sure you know what you are doing!) I'd recommend that web developers who want to write good markup and code that adheres to standards use Firefox as their primary test base, and then do follow-up testing in other browsers afterwards.
One of the main problems that Firefox users encounter is that there are still too many sites out there that only work with IE. There is an ongoing campaign called Mozilla Tech Evangelism to make this better, and in recent builds of Firefox, a new tool called Reporter that facilitates reporting of broken sites has been added. If you are interested, there is an online interface for viewing submitted reports and an always-interesting top 25 list.
Plugins have traditionally been part of the browser environment, for such tasks as watching Flash movies or viewing PDF documents. Something different has evolved in Firefox, and that is the Extension Manager. The front-end access point for users is via the Tools -> Extensions menu item, but the term Extension Manager is used in a more general way for the whole feature, including the back end. Extensions are packages that you can install into Firefox that add a new feature to it, extend existing functionality, or just sit there and look nice. While "infinite extensibility" may be exaggerating a little, there are already a whole host of add-ons out there to carry out a broad range of functionality. There is a well-established community built around extensions to cater to Mozilla developers. The site mozdev.org has for five years been providing tools and free hosting for Firefox- and Mozilla-related projects. Mozilla Update, hosted by mozilla.org, is a one-stop shop for downloading all of the best extensions. Much has been written already about individual extensions, so I won't go down that road except to say that certain ones, such as Greasemonkey, take the spotlight from time to time. Greasemonkey accommodates the addition of scripts to change how web pages look and behave. The Web--your way. The architecture of Firefox, by being standards-based and open, is ideal to such customizations. You just need to look at the categories on Mozilla Update to get a feel for what else is out there.
Figure 2. The Firefox Theme Manager
Two other areas where customization comes into play in Firefox are themes and locales. The Theme Manager (Figure 2) looks similar to the Extension Manager, and like extensions, you can get themes from Mozilla Update. Tired of the default Firefox look? Change it. More themes are coming online all the time, the vast majority being of very high quality. While there is not yet a tool for building themes, don't be put off if you fancy making one yourself. All you need is an artistic streak, and some knowledge of CSS. Themes make Firefox look nice, but more important, are making it available in multiple languages. The more languages Firefox can speak, the wider the user base it will have. The Mozilla Localization Project is tasked with enabling Mozilla software, including Firefox, for a specific language or culture. The process for creating locales is still evolving, but now localizers can register and have their source files checked into the Mozilla CVS source tree. At the time of this writing, there are 38 official locales listed, with others pending, including Vietnamese, Thai, and Hindi.