Firefox/Go Faster: Difference between revisions

From MozillaWiki
Jump to navigation Jump to search
(→‎Meetings, Status Reports, Communications: Updating meeting time to 11:30am to reflect the recent time change)
No edit summary
Line 5: Line 5:
* [https://wiki.mozilla.org/Firefox/Go_Faster/Meetings Meetings]
* [https://wiki.mozilla.org/Firefox/Go_Faster/Meetings Meetings]
* [https://wiki.mozilla.org/Firefox/Go_Faster/Status Status Reports]
* [https://wiki.mozilla.org/Firefox/Go_Faster/Status Status Reports]
* Weekly Team Meeting: Tuesdays at 11:30 San Francisco, CA, USA local time ([https://www.timeanddate.com/worldclock/converted.html?iso=20151124T0930&p1=224&p2=250&p3=0&p4=195 conversions]) in the "Program Management" Vidyo Room.
* Bi-Weekly Team Meeting: Tuesdays at 11:30 San Francisco, CA, USA local time ([https://www.timeanddate.com/worldclock/converted.html?iso=20151124T0930&p1=224&p2=250&p3=0&p4=195 conversions]) in the "Program Management" Vidyo Room.
* [https://mail.mozilla.org/listinfo/gofaster Mailing List] (open to all, primarily used for sharing status)
* [https://mail.mozilla.org/listinfo/gofaster Mailing List] (open to all, primarily used for sharing status)


Line 12: Line 12:
==Schedule==
==Schedule==
* [https://wiki.mozilla.org/Release_Management/TeamWiki Firefox main release schedule] is the master location for the dates when each Firefox version goes to Aurora, Beta, & Release.
* [https://wiki.mozilla.org/Release_Management/TeamWiki Firefox main release schedule] is the master location for the dates when each Firefox version goes to Aurora, Beta, & Release.
* Targeting initial client integration for system add-ons for 43 - goes to Aurora 2015/09/21
* System add-ons:
** Hello (45) and Pocket (46) are shipping as system add-ons.
** We shipped our first (signed, no-op) update to the beta channel on Friday, February 26 2016.
* Data updates:
** Finalizing signing now.
** OneCRL is shipping in 47
** AMO blocklist is shipping via Go Faster (Kinto) in 49
* DLC
** Fennec  fonts is shipping in 48
* Test Pilot is scheduled [real soon now]




<p> </p>
<p> </p>


==Themes==
As we plan what's coming next, we're focused on the themes outlined here.  This is not a commitment to the next projects - just our scratch area, but it is in order of relative priority.
*'''Ship features with service integrations as Add-ons:''' Decouple feature development of service integration features from 6 week Firefox software release train
*'''Ship Localizations Separately From Product:''' Have the installer or updater pull a langpack from AMO during the install or update process, and decouple langpack builds from our releases.
*'''Ship data separately from code:''' Pull data out and make it a separate download (transparent to the user) via the installer or updater.


<p>
== Goals ==
* 2016 H1 strategic initiatives:
* System add-ons
** System add-ons infrastructure complete: Documented, simple, easy to ship/update, easy to localize. (Q2)
** Staged rollout of a system addon: With a/b testing (Q2)
** Measurement infrastructure in place: Telemetry for go-faster addons (Q2)
** String delivery and updates are decoupled from trains (May tweak the wording here slightly, but essentially l10n work to support Go Faster) (Q2)
* Test Pilot
** Test Pilot launch: Release opt-in platform that allows us to perform controlled tests of new high-visibility product concepts in the general release channel of Firefox (Q2)
** Test Pilot metrics dashboard: Metrics dashboard to aid experiment authors in making decisions (Q2)
 
* Q1 goals:
** Ship Hello as a system add-on and update it
** OneCRL via Kinto into production
** Fennec fonts installed on demand (DLC) via Kinto
** Scope and prototypes for rollout and telemetry systems
** Test Pilot locale expansion - Nick/Wil
** Test Pilot launch - Nick/Wil


== Quarterly Goals ==
=== Q3 ===
* Client support for system add-ons install and update (Tracking: [http://bugzil.la/1183866 1183866])
* Ship v1 of Firefox Experiments / Idea Town (Tracking: [http://bugzil.la/1184527 1184527])
* Security policy updates through new update service ("Balrog 2.0") (Tracking: [http://bugzil.la/1184528 1184528])
* Prototype a lightweight build, test, and release pipeline for go-faster (Tracking: [http://bugzil.la/1184524 1184524])


=== Q4 ===
* Implement Hello UI as an add-on, and ship it via go-faster
* Ship Universal Search as a Firefox Experiment


== Project 1: Ship features as system add-ons ==
== Project 1: Ship features as system add-ons ==
=== Component: Addons manager in Firefox ===
=== Client ===
Owner: Dave Townsend, Robert Helmer
* Owner: Dave Townsend, Robert Helmer
 
Tasks:
    * Make Firefox understand what a system add-on is
    * How it should be installed
    * How it should be signed
    * Where it should be installed from
    * Where it should be updated from
    * That it may not be able to  be uninstalled, only disabled (uninstallation considered on a per-project basis - stability is the goal here)
    * That it should be available across all profiles (under debate)
 
=== Component: Updater in Firefox ===
* Owner: TBD
* Tasks:
    * Change the updater:
    * Update system add-ons
    * Check compatibility/dependencies
    * Check signed appropriately
    * Update data files
    * Separate the updater from the Firefox binary


=== Component: Services system add-on updater ===
=== Tools/Metrics ===
* Owner: ?
 
* Tasks:
    * Figure out if we want to serve system addons from AMO, from Balrog, or from somewhere else
    * Build whatever is needed.
 
=== Component: Build, release, QA pipeline ===
[https://wiki.mozilla.org/Firefox/Go_Faster/Release_Pipeline Release Pipeline]
[https://wiki.mozilla.org/Firefox/Go_Faster/Release_Pipeline Release Pipeline]
* Team: Selena Deckelmann and Morgan Phillips for releng, Krupa Raj and Matt Brandt from WebQA, JP Schneider from tools
* Owner: Chris Lonnen (Tools and Systems)
* Tasks:
** Design a build and release pipeline for system add-ons (using existing tools) (Selena, Morgan, JP)
** Decide/design the role of QA in CD for Firefox (QA teams)
* Etherpads:
** https://etherpad.mozilla.org/go-faster-testing-pipeline


=== Component: l10n for systems addons ===
=== Hello as add-on ===
* Team: (TBD), Michael Kelly
* Owner: Mark Banner, Ian Bicking (Hello)  
* Tasks:
 
    * Design and build a process for localizing system add-ons
 
=== Component: Hello as add-on ===
* Owner: Adam Roach (WebRTC) + Mark Banner (Client Hello team)
* Tasks:
 
    * Implement Hello as a system add-on
    * Create a migration path from Hello in product to Hello as system add-on


* Dependencies:
=== Pocket as add-on ===
* Owner: Shane Caraveo (BD&L)


    * Updater changes, build pipeline?
== Project 2: Ship experimental features as add-ons from Test Pilot ==
 
* Product Owner: Nick Chapman
== Project 1a: Ship experimental features as add-ons from Firefox Experiments/Idea Town ==
* Engineering Team: Wil Clouser (manager), Jared Hirsch (dev), Dave Justice (dev), John Gruen (UX), Les Orchard (dev)
 
=== Component: Universal Search as add-on ===
* Owner: Nick Chapman
* Team: Nick Chapman (manager), Jared Hirsch (dev), Dave Justice (dev), John Gruen (UX), Les Orchard (dev), Bill Maggs (PM), Edwin Wong (TPM)
* Tasks:
* Tasks:
     * Implement Universal Search as an experimental add-on (this can be served/updated from AMO or similar) (Jared/Les)
     * Implement Universal Search as an experimental add-on (this can be served/updated from AMO or similar) (Jared/Les)
     * Implement first iteration of Firefox Experiments website (Nick Chapman/John Gruen)
     * Implement first iteration of Test Pilot website (Nick Chapman/John Gruen)
     * Design and implement process for Firefox Experiments
     * Design and implement process for Test Pilot
* Dependencies:
* Dependencies:
     * None.
     * None.
Line 109: Line 77:
     * Github Repo: https://github.com/mozilla/idea-town
     * Github Repo: https://github.com/mozilla/idea-town


== Project 2: Pull data out of products and serve and update it separately ==
== Project 3: Data Updates ==
* Q3
* Owner: Tarek Ziade + Cloud Storage team
* Tech lead/architect: Tarek Ziade
 
=== Component: Services data updater ===
* Owner: French team (Tarek)
* Tasks:
    * Serve updates to security policy
    * Serve datafiles for Fennec (dictionaries and fonts)
 
* Dependencies:
 
    * Client updater changes (in project 1, above)
 
== Project 3: decouple l10n from product ==
* Probably Q4
 
=== Component: Build process ===
* Owner: Chris AtLee / RelEng / RelMan
* Tasks:
    * Remove l10n repacks from the release critical path
    * Work out how to add additional strings to locale packs
    * Automate uploading locale packs to AMO
 
* Dependencies:
 
    * Installer/updater changes


=== Component: Installer/updater ===
== Project 4: decouple l10n from product ==
* Owner: Rob Strong or Add-ons team
* On hold
* Tasks:
    * Build stub installers for Windows and Linux
    * Change installer to pull locale pack from AMO as a separate download
    * Figure out how locale updates need to work


==Roles and Responsibilities==
==Roles and Responsibilities==
The [https://wiki.mozilla.org/Firefox/Contacts Contacts Page] has the Roles and Responsibilities for Firefox teams, partner teams, and external partners.
The [https://wiki.mozilla.org/Firefox/Contacts Contacts Page] has the Roles and Responsibilities for Firefox teams, partner teams, and external partners.

Revision as of 16:34, 1 March 2016

Go Faster

Go Faster is a plan to change the way we ship Firefox for Desktop, and potentially other products. The end goal is to reduce the time it takes to deliver value to the user. This focuses on getting features and fixes to the user on a reduced cycle time, but includes reductions in time to download updates and new versions, and reductions in build and release time.

Meetings, Status Reports, Communications

Development

Schedule

  • Firefox main release schedule is the master location for the dates when each Firefox version goes to Aurora, Beta, & Release.
  • System add-ons:
    • Hello (45) and Pocket (46) are shipping as system add-ons.
    • We shipped our first (signed, no-op) update to the beta channel on Friday, February 26 2016.
  • Data updates:
    • Finalizing signing now.
    • OneCRL is shipping in 47
    • AMO blocklist is shipping via Go Faster (Kinto) in 49
  • DLC
    • Fennec fonts is shipping in 48
  • Test Pilot is scheduled [real soon now]



Goals

  • 2016 H1 strategic initiatives:
  • System add-ons
    • System add-ons infrastructure complete: Documented, simple, easy to ship/update, easy to localize. (Q2)
    • Staged rollout of a system addon: With a/b testing (Q2)
    • Measurement infrastructure in place: Telemetry for go-faster addons (Q2)
    • String delivery and updates are decoupled from trains (May tweak the wording here slightly, but essentially l10n work to support Go Faster) (Q2)
  • Test Pilot
    • Test Pilot launch: Release opt-in platform that allows us to perform controlled tests of new high-visibility product concepts in the general release channel of Firefox (Q2)
    • Test Pilot metrics dashboard: Metrics dashboard to aid experiment authors in making decisions (Q2)
  • Q1 goals:
    • Ship Hello as a system add-on and update it
    • OneCRL via Kinto into production
    • Fennec fonts installed on demand (DLC) via Kinto
    • Scope and prototypes for rollout and telemetry systems
    • Test Pilot locale expansion - Nick/Wil
    • Test Pilot launch - Nick/Wil


Project 1: Ship features as system add-ons

Client

  • Owner: Dave Townsend, Robert Helmer

Tools/Metrics

Release Pipeline

  • Owner: Chris Lonnen (Tools and Systems)

Hello as add-on

  • Owner: Mark Banner, Ian Bicking (Hello)

Pocket as add-on

  • Owner: Shane Caraveo (BD&L)

Project 2: Ship experimental features as add-ons from Test Pilot

  • Product Owner: Nick Chapman
  • Engineering Team: Wil Clouser (manager), Jared Hirsch (dev), Dave Justice (dev), John Gruen (UX), Les Orchard (dev)
  • Tasks:
   * Implement Universal Search as an experimental add-on (this can be served/updated from AMO or similar) (Jared/Les)
   * Implement first iteration of Test Pilot website (Nick Chapman/John Gruen)
   * Design and implement process for Test Pilot
  • Dependencies:
   * None.
  • Resources
   * Planning Doc: https://docs.google.com/document/d/1bew13QgnGriiMEEZMnI7XP6P2ieq6KiE0t4tDzrqcxQ/edit
   * Primary Wireframes: https://www.dropbox.com/s/n7dz7be1zm372mu/idea-town-WIRES.pdf?dl=0
   * Flows: https://www.lucidchart.com/documents/view/5efea80e-6240-4c24-801f-fd56c1ca9c3d
   * Github Repo: https://github.com/mozilla/idea-town

Project 3: Data Updates

  • Owner: Tarek Ziade + Cloud Storage team

Project 4: decouple l10n from product

  • On hold

Roles and Responsibilities

The Contacts Page has the Roles and Responsibilities for Firefox teams, partner teams, and external partners.