Firefox os how large open source project works

2,006 views
1,890 views

Published on

present at #COSCUP 2014 , know about mozilla and Firefox OS project, and what we do for open source project can take out to your project

Published in: Software

Firefox os how large open source project works

  1. 1. Firefox OS - How Large Open Source Project works gasolin @ coscup 2014 http://www.gasolin.idv.tw
  2. 2. About Me: ● Mozilla Firefox OS front-end developer ● GDG Taipei Organizer ● Android and Firefox OS book author http://www.gasolin.idv.tw
  3. 3. 了解 Firefox OS 專案發展狀況 why and how we make Firefox OS
  4. 4. 能用 有什麼做法或工具 What can takeout to my project?
  5. 5. https://www.mozilla.org/zh-TW/about/history/
  6. 6. http://intangible.ca/2014/03/11/infographic-our-2013-fundraising-success/
  7. 7. https://blog.mozilla.org/blog/2013/12/16/mozilla-in-2013/
  8. 8. https://blog.mozilla.org/blog/2014/07/17/firefox-os-ecosystem-shows-strong-momentum-and- expands-across-new-devices-markets-and-categories/
  9. 9. Why we make Firefox OS? 為何
  10. 10. 愛自幹的一 群人 reinvent the wheel
  11. 11. 改善 web engines are faster & powerful then ever! benefit all platform users
  12. 12. 選擇 Not-locked in a proprietary ecosystem search, open, use web or webapp by your will
  13. 13. 擁有 True Open Source, include moz-services CAN host your app in web site or marketplace
  14. 14. Carriers and Chip vendors
  15. 15. 影響 Make things that improve Million people’s life
  16. 16. How we work?
  17. 17. Fundamentals to make it happen... ● Version Control ○ Mercurial ○ Git - github ● Issue Tracking Bugzilla Code Review per commit ● Continue Integration ○ Per commit test - Travis ■ lint, unittest, integration test ○ Daily Build - TPBL, Jenkins Reference
  18. 18. …... zzZ..
  19. 19. 12問 Let’s ask some questions That you can ask for your project
  20. 20. 1. 有沒有在面試 時要求面試對象 寫程式?
  21. 21. Patch please (It’s open source) http://bugzil.la/877972
  22. 22. 2.程式人員有 沒有安靜的工 作環境
  23. 23. 3.你有沒有用 市面上最好的 工具
  24. 24. Firefox Nightly come with Web IDE
  25. 25. Debugging OS/App on browser !!!
  26. 26. 4. 你有使用 版本控制系統嗎?
  27. 27. https://github.com/mozilla-b2g/gaia/ https://github.com/mozilla/gecko-dev/
  28. 28. 5. 你會把問題都修 好之後再繼續寫新 功能嗎?
  29. 29. Version Control’s Tech Tree • Patch Review • Close tree • Style Check
  30. 30. 防火長城 per patch review
  31. 31. send PR for review Assign proper reviewer from Module owner list https://wiki.mozilla.org/Modules/FirefoxOS
  32. 32. 作風檢查 Style Check for js, cs, json linters pre commit hook Rely on lint tools, not humans
  33. 33. 和諧 Close Tree while serious CI fail happens
  34. 34. 6.你有沒有 問題追蹤資料庫?
  35. 35. Bugzilla http://mzl.la/1mXUxGM over 1’040’000 bugs reported til today
  36. 36. Fire a bug
  37. 37. Issue Tracking Tech Tree • Feature requests • Bug report • Scheduling • Blocking Bugs
  38. 38. 7.你能用一個 步驟建出所有 結果嗎?
  39. 39. Add Pull Request, all tests run automatically
  40. 40. 8.你有沒有 測試人員?
  41. 41. Bug Bash at every feature complete
  42. 42. 警長 Backout commits while CI fail happens
  43. 43. 9. 你有每日構建版本 (Daily Build)嗎?
  44. 44. TBPL + Jenkins https://github.com/Mozilla-TWQA/B2G-flash-tool https://tbpl.mozilla.org/ Auto flash script
  45. 45. Continue Integration Tech Tree • unit test/functional test • per pull request • Daily Build
  46. 46. 10. 你有一份 最新時程表嗎?
  47. 47. Check wikipedia http://en.wikipedia.org/wiki/Firefox_OS
  48. 48. https://wiki.mozilla.org/B2G/Roadmap check Mozilla wiki
  49. 49. check burndown chart http://charts.paas.allizom.org/fxos/burndown-release.html
  50. 50. Train Model http://bit.ly/1caPWsG Arrive every 3 mont
  51. 51. Train Model: Release every 3 month ● Time bound: Development + Release ● Agile for change ● Plan -> Feature complete -> Bug Fixing -> Release Engineering 1.2 Plan 1.2 Dev 1.2 Fix 1.2 Release PM/ePM /eM ePM/eM/ Engineer QA/ Engineer QA/ L10n/Cariier Test 1.3 Plan 1.3 Dev 1.3 Fix 1.3 Release 1.1 Release http://mozilla.github.io/process-releases/draft/development_specifics/
  52. 52. 11.你有規格嗎?
  53. 53. 交流 UI specs, feature planing in Box, Dropbox Google Doc, Bugzilla
  54. 54. Collaboration Pad Tech Tree • Wiki/Etherpad • Email/IRC/IM • MDN
  55. 55. 共筆 Wiki + Etherpad
  56. 56. 及時 Email, IRC &IM, on time
  57. 57. Discussion IRC: #b2g, #gaia (english) #mozilla-taiwan (chinese) Maillist: https://lists.mozilla. org/listinfo/dev-gaia Reference
  58. 58. 見面 Video conference, face-to-face
  59. 59. 12. 有沒有做走廊使用性 hallway usability測試?
  60. 60. Settings > Improve Firefox OS > Submit your Feedback
  61. 61. Settings > Improve Firefox OS > Submit your Feedback https://input.mozilla.org/zh-TW/?product=Firefox%20OS
  62. 62. #約耳測試 • 你有使用原始碼版本控制系統嗎 ? • 你能用一個步驟建出所有結果嗎 ? • 你有每日構建版本( Daily Build)嗎? • 你有沒有問題追蹤資料庫 ? • 你會把問題都修好之後再繼續寫新功能嗎 • 你有一份最新時程表嗎 • 你有規格嗎 • 程式人員有沒有安靜的工作環境 • 你有沒有用市面上最好的工具 • 你有沒有測試人員 • 有沒有在面試時要求面試對象寫程式 • 有沒有做走廊使用性 hallway usability測試
  63. 63. 約耳測試 http://chinesetrad.joelonsoftware. com/Articles/TheJoelTest.html
  64. 64. What can takeout to my projects?
  65. 65. Unlock more achievements! • Collaboration pad • Version Control (hg & git) • Issue Tracking (Bugzilla) • Continue Integration (TBPL, Travis)
  66. 66. Learn more about Firefox OS https://developer.mozilla.orgAction
  67. 67. Web App Developer Hub https://marketplace.firefox.com/developers/ Action
  68. 68. Localization https://wiki.mozilla.org/L10n:Contribute Action
  69. 69. good first bug http://mzl.la/14IUpTh Action
  70. 70. #gaiafromabove
  71. 71. Thanks
  72. 72. Earn your first commit http://codefirefox.com/videos Action

×