FirefoxOS/Participation: Difference between revisions
Jump to navigation
Jump to search
(→Plan) |
(→Plan) |
||
(7 intermediate revisions by 3 users not shown) | |||
Line 11: | Line 11: | ||
* An F5-style developer workflow for Gaia | * An F5-style developer workflow for Gaia | ||
* Tight Feedback loop from Contributors to core developers so we can continually improve our pathways | * Tight Feedback loop from Contributors to core developers so we can continually improve our pathways | ||
'''Non-Goals (yet!) | |||
* Improving Gecko contribution pathways | |||
* Improving Gonk contribution pathways | |||
==Plan== | ==Plan== | ||
'''Phase 0 (complete in August 2015) | '''Phase 0 (complete in August 2015) | ||
* <strike>Start hiring process for a dedicated community manager for fxos code contributions.</strike> | * <strike>'''Start hiring process for a dedicated community manager for fxos code contributions.'''</strike> STATUS: Asked Faramarz about headcount, no commitment to hiring at this time. | ||
* <strike>'''Form team of Gaia engineers who will spend dedicated time on this project.'''</strike> STATUS: Gregor/mhenretty discussing with mobile managers, got the peoples. Next steps: down below, get them tooled up and on-call schedule. | |||
* <strike>Form team of Gaia engineers who will spend dedicated time on this project.</strike> | * <strike>'''MDN document review: Ensure existing docs are correct.'''</strike> STATUS: Gaia team to did a first-pass on the main contribution docs. Existing docs are good, even the architecture bits. | ||
* <strike>'''Start regular triage of UX items to unblock and open up design issues'''</strike> STATUS: Tif is doing weekly triage sessions w/ the UX team, Dietrich is joining. | |||
* <strike>MDN document review: Ensure existing docs are correct.</strike> | * <strike>'''Begin discussion about Gaia dev environment'''</strike> STATUS: owned by the Jonas Task Force | ||
* <strike>'''Design a plan for re-opening Github issues'''</strike> STATUS: Ongoing, moving to Phase 1 for completion. See below. | |||
* <strike>'''Design a Flame-for-patches-landed program'''</strike> STATUS: Not as many Flames as first thought. Instead, going to give out at events, identified contributors. dietrich posted to b2g-internal and we now have a large number of Flames shipping out to contributors. | |||
'''Phase 1''' | |||
* '''Create Gaia contribution pathway page''': Single page with sequential steps from zero to patch-landed. STATUS: Dietrich started [https://etherpad.mozilla.org/gaia-pathway outline], solicited input from Gaia team. Working with MDN to get [https://bugzilla.mozilla.org/show_bug.cgi?id=1189515 collapsible content areas] added to the site. Once that's working, can fill it in. | |||
* <strike>Start regular triage of UX items to unblock and open up design issues</strike> | * '''Identify automate-able contributor activity monitoring.''' STATUS: not done, next on dietrich's list | ||
* '''Identify developer papercuts''' | |||
* <strike>Begin discussion about Gaia dev environment</strike> | ** STATUS: not done. needs owner. | ||
** [https://bugzilla.mozilla.org/show_bug.cgi?id=949551 Regular Papercuts bug], [https://bugzilla.mozilla.org/show_bug.cgi?id=950943 Developer Papercuts bug], [https://bugzilla.mozilla.org/show_bug.cgi?id=965185 Dale's bug] | |||
* Design a plan for re-opening Github issues | ** Next steps: Find threads, etherpads, make one list, prioritize, fold into plan - OWNER: ??? | ||
** Work with managers to prioritize fixing the developer papercuts we identified | |||
* '''Get feedback from existing contributors''' (arroway) | |||
* <strike>Design a Flame-for-patches-landed program</strike> | |||
* Identify automate-able contributor activity monitoring | |||
* Identify developer papercuts | |||
** STATUS: not done. | |||
** [https://bugzilla.mozilla.org/show_bug.cgi?id=949551 Regular Papercuts bug] | |||
** Next steps: Find threads, etherpads, make one list, prioritize, fold into plan - OWNER: | |||
* Get feedback from existing contributors | |||
** https://etherpad.mozilla.org/gaia-contributor-feedback | ** https://etherpad.mozilla.org/gaia-contributor-feedback | ||
** Next steps: Fold into plan - TODO: | ** Next steps: Fold into plan - TODO: arroway - will define the main action points from the feedback we received | ||
* <strike>'''Merge dev-gaia and dev-b2g mailing lists into'''</strike> (mhenretty) | |||
* | ** https://bugzilla.mozilla.org/show_bug.cgi?id=1199334 | ||
** | * <strike>'''Merge #gaia and #b2g IRC channels'''</strike> (mhenretty) | ||
* | * <strike>'''Figure out how to get more developer devices into people's hands'''</strike> - Foxfooding team owns this (Jean Gong) | ||
* Consensus on a desktop development environment - TODO: needs owner | |||
* Design a double-click+F5 workflow - TODO: needs owner | |||
* | |||
''' | |||
* Consensus on a desktop development environment | |||
* Design a double-click+F5 workflow | |||
** STATUS: not started. some existing recent discussion on dev-gaia. need to put Gaia team stakeholders together to draft a plan, then push out to dev-gaia for feedback | ** STATUS: not started. some existing recent discussion on dev-gaia. need to put Gaia team stakeholders together to draft a plan, then push out to dev-gaia for feedback | ||
* Regular schedule for on-duty for IRC/lists by community team | * Regular schedule for on-duty for IRC/lists by community team - TODO: needs owner | ||
* Identify and expand other active contribution areas and begin monitoring - StackOverflow, Reddit, XDA-Developers, etc | * Identify and expand other active contribution areas and begin monitoring - StackOverflow, Reddit, XDA-Developers, etc | ||
* All apps have style, contribution and developer workflow info in their README files | * All apps have style, contribution and developer workflow info in their README files | ||
* Update the Contribute page on mozilla.org/contribute to point to the right links | |||
* Update the Contribute | * Update the wiki to include entry points | ||
** https://wiki.mozilla.org/FirefoxOS | |||
** Right now, has no info about mailing lists, IRC channels and meeting info. | |||
'''Phase 2 | '''Phase 2 | ||
* Release strongly-supported desktop development environment | * Release strongly-supported desktop development environment | ||
** Mulet? | |||
* Release a double-click+F5 workflow | * Release a double-click+F5 workflow | ||
* Bugzilla-less development flow through Github issues | * Bugzilla-less development flow through Github issues | ||
* Expand Stackbot to cover more than just StackOverflow, for automated monitoring and notifying on more contributor activity | * Expand Stackbot to cover more than just StackOverflow, for automated monitoring and notifying on more contributor activity | ||
** Reddit? | |||
** XDA Developers? | |||
* Design a plan for re-opening Github issues. STATUS: In progress, owned by mhenretty; https://etherpad.mozilla.org/reopen-github-issues. | |||
** dev-gaia thread: https://groups.google.com/d/msg/mozilla.dev.gaia/T2OzUqG4Ri8/e8b4PwzUDAAJ | |||
** Feedback mixed. Conclusion is we need to have better MDN landing page, Gaia README, and Mulet everywhere first. | |||
==Metrics== | ==Metrics== | ||
Line 102: | Line 84: | ||
** Visits to assets | ** Visits to assets | ||
== | ==Signposting== | ||
' | TODO: Add all this to main B2G wiki page (where else?) | ||
* | |||
* | * Product direction/vision | ||
* | ** Roadmap | ||
** UX Specs | |||
** Where to submit requests/ideas | |||
* Product development | |||
** All dev docs | |||
** All communication points | |||
** Where can I find something to work on, or figure out if what I want to work on will be accepted | |||
* Release management/status | |||
** What release are we on, what's next | |||
* Testing | |||
** Where can I get a build, and for what device | |||
** Where can I submit bugs | |||
** How can I manage my builds (backup, restore, OTA) | |||
==Needs Processing== | ==Needs Processing== | ||
Line 128: | Line 122: | ||
* Case-sensitive filesystem - container for solution? | * Case-sensitive filesystem - container for solution? | ||
* Mac build env broken - work with releng to add a build test to catch that regressing? | * Mac build env broken - work with releng to add a build test to catch that regressing? | ||
* | * | ||
Contributor Types | |||
* Gaia | |||
** Experience: Web developer | |||
* Gecko | |||
** Experience: C++, JavaScript, build tooling | |||
* Gonk | |||
** Experience: C, C++, build tooling | |||
* Device Porting | |||
** Experience: C, C++, Android dev, build tooling |
Latest revision as of 11:51, 3 November 2015
Problem
- Developing the core of Firefox OS is too hard
- Gaia does not have a supported development environment
- Contributor first-time experience is poor
- Navigating the dev->test->review process is too hard for contributors
Goals
- Vibrant and engaged development community, invested in the success of Firefox OS
- Clear and managed developer pathway for new contributors
- Supported and clearly documented development environment for Gaia
- An F5-style developer workflow for Gaia
- Tight Feedback loop from Contributors to core developers so we can continually improve our pathways
Non-Goals (yet!)
- Improving Gecko contribution pathways
- Improving Gonk contribution pathways
Plan
Phase 0 (complete in August 2015)
Start hiring process for a dedicated community manager for fxos code contributions.STATUS: Asked Faramarz about headcount, no commitment to hiring at this time.Form team of Gaia engineers who will spend dedicated time on this project.STATUS: Gregor/mhenretty discussing with mobile managers, got the peoples. Next steps: down below, get them tooled up and on-call schedule.MDN document review: Ensure existing docs are correct.STATUS: Gaia team to did a first-pass on the main contribution docs. Existing docs are good, even the architecture bits.Start regular triage of UX items to unblock and open up design issuesSTATUS: Tif is doing weekly triage sessions w/ the UX team, Dietrich is joining.Begin discussion about Gaia dev environmentSTATUS: owned by the Jonas Task ForceDesign a plan for re-opening Github issuesSTATUS: Ongoing, moving to Phase 1 for completion. See below.Design a Flame-for-patches-landed programSTATUS: Not as many Flames as first thought. Instead, going to give out at events, identified contributors. dietrich posted to b2g-internal and we now have a large number of Flames shipping out to contributors.
Phase 1
- Create Gaia contribution pathway page: Single page with sequential steps from zero to patch-landed. STATUS: Dietrich started outline, solicited input from Gaia team. Working with MDN to get collapsible content areas added to the site. Once that's working, can fill it in.
- Identify automate-able contributor activity monitoring. STATUS: not done, next on dietrich's list
- Identify developer papercuts
- STATUS: not done. needs owner.
- Regular Papercuts bug, Developer Papercuts bug, Dale's bug
- Next steps: Find threads, etherpads, make one list, prioritize, fold into plan - OWNER: ???
- Work with managers to prioritize fixing the developer papercuts we identified
- Get feedback from existing contributors (arroway)
- https://etherpad.mozilla.org/gaia-contributor-feedback
- Next steps: Fold into plan - TODO: arroway - will define the main action points from the feedback we received
Merge dev-gaia and dev-b2g mailing lists into(mhenretty)Merge #gaia and #b2g IRC channels(mhenretty)Figure out how to get more developer devices into people's hands- Foxfooding team owns this (Jean Gong)- Consensus on a desktop development environment - TODO: needs owner
- Design a double-click+F5 workflow - TODO: needs owner
- STATUS: not started. some existing recent discussion on dev-gaia. need to put Gaia team stakeholders together to draft a plan, then push out to dev-gaia for feedback
- Regular schedule for on-duty for IRC/lists by community team - TODO: needs owner
- Identify and expand other active contribution areas and begin monitoring - StackOverflow, Reddit, XDA-Developers, etc
- All apps have style, contribution and developer workflow info in their README files
- Update the Contribute page on mozilla.org/contribute to point to the right links
- Update the wiki to include entry points
- https://wiki.mozilla.org/FirefoxOS
- Right now, has no info about mailing lists, IRC channels and meeting info.
Phase 2
- Release strongly-supported desktop development environment
- Mulet?
- Release a double-click+F5 workflow
- Bugzilla-less development flow through Github issues
- Expand Stackbot to cover more than just StackOverflow, for automated monitoring and notifying on more contributor activity
- Reddit?
- XDA Developers?
- Design a plan for re-opening Github issues. STATUS: In progress, owned by mhenretty; https://etherpad.mozilla.org/reopen-github-issues.
- dev-gaia thread: https://groups.google.com/d/msg/mozilla.dev.gaia/T2OzUqG4Ri8/e8b4PwzUDAAJ
- Feedback mixed. Conclusion is we need to have better MDN landing page, Gaia README, and Mulet everywhere first.
Metrics
Brainstorming
- Code
- http://areweeveryoneyet.org/ for...
- total numbers of staff vs non-staff code contributors
- patches from staff vs non-staff code contributors
- http://areweeveryoneyet.org/ for...
- Developer Support
- Numbers of answered SO posts
- XDA-developers
- Documentation
- Maybe num visits to the contribution pages?
- Evangelism
- Talks
- Videos
- Visits to assets
Signposting
TODO: Add all this to main B2G wiki page (where else?)
- Product direction/vision
- Roadmap
- UX Specs
- Where to submit requests/ideas
- Product development
- All dev docs
- All communication points
- Where can I find something to work on, or figure out if what I want to work on will be accepted
- Release management/status
- What release are we on, what's next
- Testing
- Where can I get a build, and for what device
- Where can I submit bugs
- How can I manage my builds (backup, restore, OTA)
Needs Processing
- Integration tests are broken, cannot run - need to verify
- Building on Mac OS X is maybe broken, unclear - need to verify
Ideas
- Gregor suggested making videos for ‘My first FxOS app’, ‘My first FxOS add-on’ or ‘My development workflow', after seeing Reza's deck. We should publish through Hacks Youtube channel.
Notes
Existing docs and workflows
- Gaia (MDN)
- Code Repository READMEs
Developer papercuts
- Desktop tools should work with double-click-to-open, not only command line pointer to profile
- Case-sensitive filesystem - container for solution?
- Mac build env broken - work with releng to add a build test to catch that regressing?
Contributor Types
- Gaia
- Experience: Web developer
- Gecko
- Experience: C++, JavaScript, build tooling
- Gonk
- Experience: C, C++, build tooling
- Device Porting
- Experience: C, C++, Android dev, build tooling