Mozilla Firefox Development Charter
Ben Goodger (11/28/2004)
Today, the goal of the Firefox project is to deliver the best possible browsing experience to the widest possible set of people. We aim to do this in part by:
- Delivering the right set of features - not too many or too few (the goal is to create a useful browser, not a minimal browser)
- Making as few compromises as possible where user experience is concerned. We will not compromise the main line UI to placate an element of the community. Usability is a large area consisting not only of the things one typically considers related to the user experience such as the design of dialog boxes and windows, but also things such as interaction design (looking at how users try and accomplish a task, noting the paths they take and attempting to optimize those paths) and performance (reaction speed from a piece of software is important so as not to annoy the user - perceived speed is often more important than actual speed).
- Develop and maintain an extension system to allow for research into new areas without affecting the core and to allow for techies, early adopters, web developers and other specific communities to customize their browsers to suit their specific needs without affecting usability or download size for the mass market.
- Retaining a tight command and control hierarchy. UI design is not a committee driven process. Application design must be nimble and testing is better than discussion, so:
- Make changes quickly and then get them to people so that we can refine them based on observation of user interactions.
- Deliver software for Windows, Mac OS X and Linux, with the goal of integrating as slickly as possible into each of those systems.
- Be, if possible, a vehicle for emerging Mozilla platform APIs including XULRunner, which will allow application developers a means to deploy useful software to people that is not necessarily tied to a particular operating system.
- Keeping the download size down - to less than 5.0MB on Windows for the installer.