Spectator: Difference between revisions
No edit summary |
|||
| Line 1: | Line 1: | ||
= | = About Spectator = | ||
The Firefox team needs more data about how users actually use Firefox in the field. | The Firefox team needs more data about how users actually use Firefox in the field. To do this, we created an extension that instruments Firefox. With this tool, we can understand how the browser is used. | ||
= | = Data we collect = | ||
Please see the [[User:Polvi/Spectator:FAQ|FAQ]]. | |||
= Technical Implementation = | = Technical Implementation = | ||
Revision as of 21:39, 11 January 2008
About Spectator
The Firefox team needs more data about how users actually use Firefox in the field. To do this, we created an extension that instruments Firefox. With this tool, we can understand how the browser is used.
Data we collect
Please see the FAQ.
Technical Implementation
This is implemented as an extension and a server backend.
This project can be divided into several components:
Data Collection Service
The data collection service aggregates the data and uploads it to the collection server. Before uploading data, a manifest file will be fetched from the server to control which items will be uploaded. This allows us to tweak the volume of data collected as desired, without client-side changes.
Data Collectors
Data collectors will hook in at a variety of locations in the backend and frontend. Each collector submits events to the collection service, where each event can contain collector-specific key/value pairs.
Server Infrastructure
The server is responsible for storing and providing a clean interface to the data.
Distribution
We think that given the opportunity to opt-in to this data collection ("Help us improve Firefox"), a statistically significant number of users would enable this functionality. In addition, for prereleases, it may be feasible to enable this collection by default.
Process
- Update existing extension to work with trunk
- Setup data collector service to collect information about particular Feature Use areas
- Prototype a server to receive information
- Prototype a backend to read data
- Distribute internally to mozilla
- Seek findings around Feature Use data
- Distribute with a beta, prompting with enabling XUL 1/100 times