Mozilla (a.k.a. the Mozilla Suite or the Mozilla Application Suite, and codenamed Seamonkey) is a free, cross-platform Internet software suite, whose components include a web browser, an email client, an HTML editor, and an IRC client. Its development was initiated by Netscape Communications Corporation based on the source for their Netscape Communicator, but the Mozilla Foundation now spearheads development.
The name Mozilla had been used internally for the Netscape Navigator web browser from its beginning. It was a contraction of Mosaic-killer, referring to the hope that the project would unseat Mosaic as the web's most popular browser, along with the name of the fictional monster Godzilla. Externally, the name was used only in the browser's HTTP user agent string and as the name of the company mascot, which took the form of a cartoon lizard; for more information, see Mozilla (mascot) and The Book of Mozilla.
In March 1998, Netscape released most of the code base for its popular Netscape Communicator suite (including the Netscape Navigator browser) under an open source license. The name of the application developed from this would be Mozilla, coordinated by the newly created Mozilla Organization, at the mozilla.org website.
Although the large parts (layout engine, all front-end related code, etc.) of original Communicator code were abandoned shortly thereafter, the Mozilla organization eventually succeeded in producing a full-featured Internet suite that surpassed Communicator in both features and stability.
Under the AOL banner, Mozilla.org continued development of the browser and management of the Mozilla source until July 2003 when this task passed to the Mozilla Foundation. The Foundation is a non-profit organization composed primarily of developers and staff from mozilla.org and owns the Mozilla trademark (but not the copyright to the source code, which is retained by the individual and corporate contributors, but licensed under the GPL and MPL). It received initial donations from AOL, IBM, Sun Microsystems, Red Hat, and Mitch Kapor; however all official ties with AOL were severed following the announcement of the end of the Netscape Navigator browser and AOL's agreement to use Microsoft's Internet Explorer browser in future versions of its AOL software. (AOL has since announced it will be using Mozilla's Gecko layout engine.)
History of Mozilla
The Netscape Communicator open source release, which came at the height of America's late-1990s economic boom, was greeted by the Internet community with a mixture of acclaim and skepticism. In some circles, Netscape's source release was seen as both a victory for the free software movement and an opportunity for Netscape to tap the power of open source development. This view was particularly popular among users of GNU/Linux and other free software. Other observers—including many outside of the free software business community—interpreted the move as Netscape's surrender in the face of the moreover legally criticized growing ascendancy of Microsoft's Internet Explorer browser.
Regardless of the public's opinion, development with the Communicator code base proved harder than initially hoped:
- The Communicator code base was huge and complex.
- It had to be developed simultaneously on many operating systems, and therefore to cope with their differing libraries and idiosyncrasies.
- It bore the scars of many rapid cycles of closed-source development on "Internet time". The short development cycles had led programmers to sacrifice modularity and elegance in the scramble to implement more features.
- Several parts of Communicator's code were never released as open source, due to licensing arrangements with third parties.
As a result, the initial Communicator open source release did not even build cleanly, much less run. This presented steep challenges to the Mozilla core developers (most of whom were still on Netscape's payroll), and even steeper challenges to independent developers wishing to contribute to Mozilla on their own.
Ultimately, the Mozilla core developers concluded that the old code could not be salvaged. They decided to scrap the whole code base and rewrite it from the ground up, which caused one of the lead Netscape developers, Jamie Zawinski, to resign.  The resulting plan included, among other things, the creation of a whole new cross-platform user interface library and a new HTML rendering engine.
Few observers foresaw the result. On December 7, 1998—less than two months after the October 26, 1998 roadmap announcement stating that the old Communicator code would be scrapped—Netscape released a special "preview" based on the Gecko HTML layout engine. Gecko had already been in development for some time at Netscape under the internal name NGLayout ("Next Generation Layout"), and it was noticeably faster and smaller than its predecessor. One widely publicized feature of the first Gecko preview release was that it fit on a single 1.44 MB floppy disk, making it about one tenth the size of most contemporary browsers.
The prompt release of Gecko led many to believe that a complete browser could not be far behind. However, the first release of the rendering engine was far from bug- and crash-free, and even further from being ready for the prime-time, and producing a fully functional web browser required much more than the nascent rendering engine: the Mozilla developers soon envisioned a project more ambitious than a simple web browser. The new Mozilla (internally codenamed "Seamonkey") would be a platform for Internet applications, with a fully programmable user interface and a modular architecture. This Mozilla would function equally well as a host for email clients, instant messaging clients, Usenet news readers, or any number of other applications.
Due to the effort required for this massive rewrite, the project fell far behind its original projected deadlines. In the years that followed, skepticism about Mozilla grew widespread, and some doubted that a finished Mozilla browser would ever see the light of day. However, the project persisted, continuing uninterrupted through both the purchase of Netscape by AOL and the end of the dot-com boom.
By June 2002, the Mozilla project had produced a serviceable, standards-based web browser that worked on multiple operating systems, including Linux, Mac OS, Microsoft Windows, and Solaris. The Mozilla 1.0 release on June 5, 2002 was even praised for introducing new features that Internet Explorer lacked, including better support for user privacy preferences and some interface improvements. Additionally, the Mozilla browser became a de facto reference implementation for various World Wide Web Consortium standards, due to its strong support for those standards. Current versions of Mozilla are highly customizable and include advanced features such as cookie, popup, password and image management, and tabbed browsing.
On July 15, 2003, AOL announced that it would close down its browser division, which was in essence Netscape's Mozilla. Far from being the end, this was the beginning of the Mozilla Foundation, formed by former Netscape/Mozilla veterans to take responsibility of the development of Mozilla. As a consolation AOL pledged $2 million to help the newly-formed foundation.
Many people had been expecting this after AOL reached a settlement with competitor, Microsoft, with a deal for the AOL software to use Internet Explorer for the next 7 years. Netscape had always been seen as a bargaining chip for AOL against Microsoft.
AOL laid off most of Netscape's employees and hackers, except for some who were transferred to other divisions. Netscape signs were seen being pulled off its building, confirming what many took as the end of Netscape. AOL will be keeping the Netscape brand for its portal, but the company will no longer pay anyone to develop the Mozilla codebase. The following versions of Netscape were simply rebranded versions of Mozilla, beginning with version 7.2 (based on Mozilla 1.7), which AOL released on August 17th 2004.
Future development of the Mozilla platform
A new development roadmap has been released which marks a change in the future plans for Mozilla. Instead of the current integrated "cross-platform front end" (XPFE) application, Mozilla will become a suite of smaller applications sharing common back-end technology such as the XUL user-interface framework and the Gecko rendering engine. They will continue to work seamlessly with one another, as before, but will be able to integrate better with third-party applications. By cutting the functionality of the suite into pieces, this is intended to improve the project in several ways by
- reducing application footprint and code bloat
- simplifying project management
- increasing program modularity, and hence reliability and security
This is not a long-term goal: the Firefox (formerly Phoenix, then Firebird) 1.0 browser has been released, and the Thunderbird (formerly Minotaur) mail and news client is rapidly maturing after being factored out from XPFE. Mozilla released Thunderbird 1.0 on December 7, 2004.
To distinguish it from other Mozilla products like Firefox, the core Mozilla package is now commonly being marketed by the Mozilla Foundation as 'The Mozilla Suite', while being known as Seamonkey by its developers.
On March 10, 2005, the Mozilla Foundation announced that they would not release any further official versions of the suite beyond 1.7.x .
However, the Mozilla Foundation emphasized that they would provide infrastructure for community members who wished to continue development. In effect, it would mean that the suite would still be released but not by the Mozilla Foundation . The continued product would require a new name and versioning to avoid confusion for those organizations who want to benefit from the longer-term investment in Mozilla 1.7.x.
Early versions of Mozilla were ordered by their milestone (M) number, e.g. Milestone 12 (M12). After 18 such milestones, the Mozilla project moved to a more standard numbering system with the release of Mozilla 0.6 in December 2000. It has since passed 1.0 (in 2002). See the version history on Mozilla.org.
The main technical thrust of Mozilla has been to implement and extend public standards that are supportive of major Internet communication systems such as the World Wide Web and email. By seeking to do so freely and portably, Mozilla technology takes a leadership position in the evolution of those technologies as well as providing public infrastructure that is mostly free of commercial motives.
The Mozilla software architecture is, of necessity, fairly modular. As a result, Mozilla development generated several components that have been reused in other contexts. Important parts of the project include NSPR, a platform abstraction library that makes all operating systems appear the same to Mozilla, and XPCOM, a software componentry framework similar to Microsoft's COM. Probably the most important, however, is the Gecko layout engine, which has been reused in many other projects (see below).
One unique aspect of Mozilla is that the entire user interface, including menus and dialog boxes, is rendered by the Gecko layout engine, rather than by the host operating system's GUI libraries. This architecture uses a specially designed language called XUL, and has been somewhat controversial. Its defenders cite its flexibility and the fact that it can present a standard GUI across different platforms. Its critics argue that this architecture adversely impacts performance, and that it is a widely accepted convention of application design to use the native GUI elements of the operating system interface. A number of browsers exist that use the rendering engine only to display the HTML page (see below).
In Mozilla, XUL is tightly integrated with its AOM (Application Object Model). This set of objects integrates a document-specified GUI with software more typically found in GUI software, such as commands and views. This technology is analogous to the W3C DOM standards that accompany HTML.
Because of its modular design and its public nature, work on the development of Mozilla has led to various components and pieces of software that have been reused elsewhere. These range from components used by other web browsers, and related software, to tools used in the development process itself. The Mozilla Foundation also hosts a number of projects not directly related to the Mozilla browser or its development, including several initiatives abandoned by Netscape which have been declared open source.
Official Mozilla-based applications
The Mozilla Foundation hosts development on various projects related to the core Mozilla technology, including:
One can add extensions, themes, and plugins to Mozilla.
The task of Mozilla development itself spurred the creation of new tools for geographically distributed, cross-platform software development; some of these tools were widely adopted by the larger open source community, including the following:
Other Mozilla Foundation projects
Some of the other projects hosted on mozilla.org were originally Netscape initiatives that were abandoned, such as the "Javagator " project, which aimed to implement the whole of Netscape Communicator in Java. The source of the work so far was released under an open source license to be completed by contributors; some of these projects have received very little development since, while others are very active.
For more, see the project list at Mozilla.org.
Browsers that use the Gecko layout engine for the entire user interface
As discussed above, the use of the Gecko layout engine to render the entire user interface is slightly controversial; nonetheless, several other browsers are based on adapted Mozilla code and retain this feature, such as:
Browsers that use the Gecko layout engine for webpage display only
Many other browsers use Gecko only for the actual display - either because they wish to use the native "look and feel" of a particular operating system, or because they are embedding web functionality in a larger, non-Mozilla-based, product.
Other projects based on Mozilla code