Firefox/Projects/Firefox Start: Difference between revisions

From MozillaWiki
Jump to navigation Jump to search
No edit summary
Line 29: Line 29:
*option to use Google-hosted Firefox Start page
*option to use Google-hosted Firefox Start page
* For the initial implementation will not feature any dynamic content like history/bookmark lookups.
* For the initial implementation will not feature any dynamic content like history/bookmark lookups.
*segment on anything other than locale, geo, version, or OS
*segment on anything other than:
**  client version
** last client update
** client host operating system
** client locale
** add-ons installed on client
*understand the impressions of each snippet
*understand the impressions of each snippet



Revision as of 20:28, 1 September 2010

Instead of loading Firefox Start from the network, use a locally hosted web application that provides the same functionality but offers greater potential for user control & customization, as well as engagement and interaction between Mozilla and users.

  • Proposed by: beltzner, cbeard
  • Project lead: mak
  • Project members: mak, beltzner, cbeard, limi, justin

Status

Shipped in Beta 5 - need to improve styling, implement snippet support.

Next steps

  • restyle with updated logos and look to match Google.com
  • retrieve snippets from mozilla hosted service
  • create a site to host test snippets on

Goals

  • locally hosted page with
  • no chrome privilege required
  • some form of offline experience
  • control/customization of search engine used
  • ability to display user engagement messages from mozilla.com servers
  • do all of the above in a scalable and measurable way
  • track performance and conversion of each snippet

Non Goals

  • ability to perform history/cache searches when offline
  • option to use Google-hosted Firefox Start page
  • For the initial implementation will not feature any dynamic content like history/bookmark lookups.
  • segment on anything other than:
    • client version
    • last client update
    • client host operating system
    • client locale
    • add-ons installed on client
  • understand the impressions of each snippet

Timeline / Milestones

Phase 1 : locally hosted replacement

  • host local HTML/JS/CSS content (done)
  • ensure search codes remained consistent with existing page (localization, geoip/load balancing redirects)(partially done)
  • ensure cookies are not sent when page loads
  • ensure client ships with default set of snippets for initial offline support

Phase 2 : add dynamism, offline support

  • allow search engine to be modified based on Search Box selection follow-up, perf hog due to content priv.
  • add dynamic snippet delivery and display (partially done)
  • add offline detection and messaging
  • cdn hosting of snippets
  • async fetch of content with analytics on click-through

Phase 3 : bells and whistles (time permitting)

  • design changes
  • multi-variant testing support
  • some local places DB analysis (about:me style stuff)

Timeline TBD

These are the bugs of interest:

Bug & Summary Owner Status
bug 563723 - add about:home to mimic Firefox Start mak awaiting review
bug 563738 - Add current Mozilla "snippets" in the about:home page mak awaiting review
bug 544819 - Bug 544819 - Create a basic Home Tab linking to the current Home Page nobody haven't started, waits app tabs

Requirements

  • privacy: do not send any data to third party web services when loaded
  • performance: benchmark to show performance difference over web-hosted Firefox Start
  • performance: don't hit moz servers for every impression
  • performance: better offline experience than web-hosted Firefox Start
  • metrics: ability to do a/b testing with engagement pieces

Dependencies

  • product: talk with Google to arrange a technical contact and to ensure a smooth handoff (beltzner) done
  • webdev: engagement pieces to be delivered from mozilla.com service
  • fix localStorage bug: it does not allow to set entries for URIs without a host (about: pages have just scheme and path). bug 568091 (done)
  • localStorage is main-thread only (IO on another thread is future target though since not really needed for first implementation). (follow-up)
  • Use search service engine definitions, inject from chrome context at startup (done)

Design Specification

Visual Design

Sketch and tracking bug coming soon, but essentially:

  • increase font size in textbox
  • use better version of search service logo
  • change layout so that it doesn't look as squooshed
  • leave space for snippets more or less where they exist now
  • add links to privacy policy, user rights

Snippet Service

A service will be hosted on mozilla.com that will deliver a JSON file that contains HTML, CSS, JS and media content used to create a user-facing "snippet" that will be presented on the Firefox Start page. This snippet will use web technology, including JS, and can be interactive / dynamic as required.

  • service endpoint will accept parameters so that snippet can be differentiated based on:
    • client version
    • last client update
    • client host operating system
    • client locale
    • add-ons installed on client
  • service will return a single JSON file that contains
    • HTML files
    • CSS files
    • JS files
    • media files (PNG, WEBM, etc)
  • service will be able to handle load of being checked once a day by all Firefox clients

Snippet Presentation in Client

The client will store the snippet content on the user's local disk (either as flat file or using appcache / offline storage?) and display it as part of the Firefox Start page in an iframe. The client will update the snippet asynchronously at most once per 24 hour period; any additional rotation/varying of the user facing content will need to be handled by the snippet itself.

  • client will check mozilla hosted service at most once per day
  • client will download JSON file from mozilla hosted service if update available
  • client will unpack resources from JSON file and store locally
  • client will render locally stored content in iframe on Firefox Start page

Testing

tbd

Related Projects

  • Application Tabs
  • Home Tab