how thousands of people collaborate on a global scale to create firefox
DESCRIPTION
The engineering process at Mozilla.How Mozilla Labs make open distribution possible.TRANSCRIPT
![Page 1: How thousands of people collaborate on a global scale to create Firefox](https://reader036.vdocument.in/reader036/viewer/2022081403/554bbe6bb4c90594278b4f9a/html5/thumbnails/1.jpg)
From Chaos to Order (and back!):How thousands of people
collaborate on a global scale to create Firefox
Tristan Nitot, President & Founder,Mozilla Europe
![Page 2: How thousands of people collaborate on a global scale to create Firefox](https://reader036.vdocument.in/reader036/viewer/2022081403/554bbe6bb4c90594278b4f9a/html5/thumbnails/2.jpg)
What is Mozilla?
![Page 3: How thousands of people collaborate on a global scale to create Firefox](https://reader036.vdocument.in/reader036/viewer/2022081403/554bbe6bb4c90594278b4f9a/html5/thumbnails/3.jpg)
The Mozilla project
• We build software
• Firefox, anyone?
• We build communities
• 75 languages for Firefox 3.5.
• 800,000 Beta testers
• 300 million active users
• We have a vision of the Internet
![Page 4: How thousands of people collaborate on a global scale to create Firefox](https://reader036.vdocument.in/reader036/viewer/2022081403/554bbe6bb4c90594278b4f9a/html5/thumbnails/4.jpg)
This isn’t it
![Page 5: How thousands of people collaborate on a global scale to create Firefox](https://reader036.vdocument.in/reader036/viewer/2022081403/554bbe6bb4c90594278b4f9a/html5/thumbnails/5.jpg)
nor this...
Minitel 2.0
![Page 6: How thousands of people collaborate on a global scale to create Firefox](https://reader036.vdocument.in/reader036/viewer/2022081403/554bbe6bb4c90594278b4f9a/html5/thumbnails/6.jpg)
The Mozilla Manifesto 1/2• The Internet is an integral part of modern life – a key
component in education, communication, collaboration, business, entertainment and society as a whole.
• The Internet is a global public resource that must remain open and accessible.
• The Internet should enrich the lives of individual human beings.
• Individuals’ security on the Internet is fundamental and cannot be treated as optional.
• Individuals must have the ability to shape their own experiences on the Internet.
![Page 7: How thousands of people collaborate on a global scale to create Firefox](https://reader036.vdocument.in/reader036/viewer/2022081403/554bbe6bb4c90594278b4f9a/html5/thumbnails/7.jpg)
The Mozilla Manifesto 2/2• The effectiveness of the Internet as a public resource
depends upon interoperability (protocols, data formats, content), innovation and decentralized participation worldwide.
• Free and open source software promotes the development of the Internet as a public resource.
• Commercial involvement in the development of the Internet brings many benefits; a balance between commercial goals and public benefit is critical.
• Magnifying the public benefit aspects of the Internet is an important goal, worthy of time, attention and commitment
http://www.mozilla.org/about/manifesto
![Page 8: How thousands of people collaborate on a global scale to create Firefox](https://reader036.vdocument.in/reader036/viewer/2022081403/554bbe6bb4c90594278b4f9a/html5/thumbnails/8.jpg)
What I’ll focus on today:
Decentralized Participation
![Page 9: How thousands of people collaborate on a global scale to create Firefox](https://reader036.vdocument.in/reader036/viewer/2022081403/554bbe6bb4c90594278b4f9a/html5/thumbnails/9.jpg)
How does the Mozilla project work?
Mass participation
![Page 10: How thousands of people collaborate on a global scale to create Firefox](https://reader036.vdocument.in/reader036/viewer/2022081403/554bbe6bb4c90594278b4f9a/html5/thumbnails/10.jpg)
1
VP of Engineering
![Page 11: How thousands of people collaborate on a global scale to create Firefox](https://reader036.vdocument.in/reader036/viewer/2022081403/554bbe6bb4c90594278b4f9a/html5/thumbnails/11.jpg)
1
80
VP of Engineering
Mozilla CorporationDevelopment Team
![Page 12: How thousands of people collaborate on a global scale to create Firefox](https://reader036.vdocument.in/reader036/viewer/2022081403/554bbe6bb4c90594278b4f9a/html5/thumbnails/12.jpg)
1
80
100s
VP of Engineering
Mozilla CorporationDevelopment Team
DailyContributors
![Page 13: How thousands of people collaborate on a global scale to create Firefox](https://reader036.vdocument.in/reader036/viewer/2022081403/554bbe6bb4c90594278b4f9a/html5/thumbnails/13.jpg)
80
100s
1000s
VP of Engineeering
Mozilla CorporationDevelopment Team
DailyContributors
Contributors
![Page 14: How thousands of people collaborate on a global scale to create Firefox](https://reader036.vdocument.in/reader036/viewer/2022081403/554bbe6bb4c90594278b4f9a/html5/thumbnails/14.jpg)
1000s
10,000s
Mozilla CorporationDevelopment Team
DailyContributors
Contributors
Nightly testers
![Page 15: How thousands of people collaborate on a global scale to create Firefox](https://reader036.vdocument.in/reader036/viewer/2022081403/554bbe6bb4c90594278b4f9a/html5/thumbnails/15.jpg)
10,000s
1,000,000
DailyContributors
Contributors
Nightly testers
Beta testers
![Page 16: How thousands of people collaborate on a global scale to create Firefox](https://reader036.vdocument.in/reader036/viewer/2022081403/554bbe6bb4c90594278b4f9a/html5/thumbnails/16.jpg)
1MDaily users
(approx 330M)
Nightly testers
Beta testers
Contributors
![Page 17: How thousands of people collaborate on a global scale to create Firefox](https://reader036.vdocument.in/reader036/viewer/2022081403/554bbe6bb4c90594278b4f9a/html5/thumbnails/17.jpg)
37% of the code contributedto Firefox since November ’06has come from the community
![Page 18: How thousands of people collaborate on a global scale to create Firefox](https://reader036.vdocument.in/reader036/viewer/2022081403/554bbe6bb4c90594278b4f9a/html5/thumbnails/18.jpg)
From Chaos to Order
![Page 19: How thousands of people collaborate on a global scale to create Firefox](https://reader036.vdocument.in/reader036/viewer/2022081403/554bbe6bb4c90594278b4f9a/html5/thumbnails/19.jpg)
ChaosAnyone can propose a change
![Page 20: How thousands of people collaborate on a global scale to create Firefox](https://reader036.vdocument.in/reader036/viewer/2022081403/554bbe6bb4c90594278b4f9a/html5/thumbnails/20.jpg)
Anyone can comment on a proposal for a change
Chaos
![Page 21: How thousands of people collaborate on a global scale to create Firefox](https://reader036.vdocument.in/reader036/viewer/2022081403/554bbe6bb4c90594278b4f9a/html5/thumbnails/21.jpg)
Anyone can submit a change to the code
Chaos
![Page 22: How thousands of people collaborate on a global scale to create Firefox](https://reader036.vdocument.in/reader036/viewer/2022081403/554bbe6bb4c90594278b4f9a/html5/thumbnails/22.jpg)
OrderNot everyone can approve a change
![Page 23: How thousands of people collaborate on a global scale to create Firefox](https://reader036.vdocument.in/reader036/viewer/2022081403/554bbe6bb4c90594278b4f9a/html5/thumbnails/23.jpg)
OrderStrong leadership structure
Mike Beltzner, Director of Firefox
![Page 24: How thousands of people collaborate on a global scale to create Firefox](https://reader036.vdocument.in/reader036/viewer/2022081403/554bbe6bb4c90594278b4f9a/html5/thumbnails/24.jpg)
Delegating authority: Module Ownership• A Module is a collection of source files that
form a coherent bundle.
• An Owner is the person in charge of a Module.
• A Peer is a person whom the Owner has designated to help maintain the Module
• If a Module has an Owner, the Owner or a Peer should in general review all code changes that go into that module.
![Page 25: How thousands of people collaborate on a global scale to create Firefox](https://reader036.vdocument.in/reader036/viewer/2022081403/554bbe6bb4c90594278b4f9a/html5/thumbnails/25.jpg)
OrderMultiple Code Reviews
![Page 26: How thousands of people collaborate on a global scale to create Firefox](https://reader036.vdocument.in/reader036/viewer/2022081403/554bbe6bb4c90594278b4f9a/html5/thumbnails/26.jpg)
SubmitPatch
(anyone)
OrderMultiple Code Reviews
![Page 27: How thousands of people collaborate on a global scale to create Firefox](https://reader036.vdocument.in/reader036/viewer/2022081403/554bbe6bb4c90594278b4f9a/html5/thumbnails/27.jpg)
Module Owner Code Review
SubmitPatch
(anyone)
OrderMultiple Code Reviews
![Page 28: How thousands of people collaborate on a global scale to create Firefox](https://reader036.vdocument.in/reader036/viewer/2022081403/554bbe6bb4c90594278b4f9a/html5/thumbnails/28.jpg)
Module Owner Code Review
SubmitPatch
(anyone)
SuperReview
OrderMultiple Code Reviews
![Page 29: How thousands of people collaborate on a global scale to create Firefox](https://reader036.vdocument.in/reader036/viewer/2022081403/554bbe6bb4c90594278b4f9a/html5/thumbnails/29.jpg)
Module Owner Code Review
SubmitPatch
(anyone)
SuperReview
TrunkCheck-in
OrderMultiple Code Reviews
![Page 30: How thousands of people collaborate on a global scale to create Firefox](https://reader036.vdocument.in/reader036/viewer/2022081403/554bbe6bb4c90594278b4f9a/html5/thumbnails/30.jpg)
Module Owner Code Review
SubmitPatch
(anyone)
SuperReview
Release TeamReview
TrunkCheck-in
OrderMultiple Code Reviews
![Page 31: How thousands of people collaborate on a global scale to create Firefox](https://reader036.vdocument.in/reader036/viewer/2022081403/554bbe6bb4c90594278b4f9a/html5/thumbnails/31.jpg)
Module Owner Code Review
SubmitPatch
(anyone)
SuperReview
Release BranchCheck-in
Release TeamReview
TrunkCheck-in
OrderMultiple Code Reviews
![Page 32: How thousands of people collaborate on a global scale to create Firefox](https://reader036.vdocument.in/reader036/viewer/2022081403/554bbe6bb4c90594278b4f9a/html5/thumbnails/32.jpg)
Module Owner Code Review
SubmitPatch
(anyone)
SuperReview
Release BranchCheck-in
Release TeamReview
TrunkCheck-in
OrderMultiple Code Reviews
![Page 33: How thousands of people collaborate on a global scale to create Firefox](https://reader036.vdocument.in/reader036/viewer/2022081403/554bbe6bb4c90594278b4f9a/html5/thumbnails/33.jpg)
What about innovation?
![Page 34: How thousands of people collaborate on a global scale to create Firefox](https://reader036.vdocument.in/reader036/viewer/2022081403/554bbe6bb4c90594278b4f9a/html5/thumbnails/34.jpg)
Issue: the process limits participation
• Steep learning curve
• Difficult to share experiments between users
• Release cycle getting in the way
![Page 35: How thousands of people collaborate on a global scale to create Firefox](https://reader036.vdocument.in/reader036/viewer/2022081403/554bbe6bb4c90594278b4f9a/html5/thumbnails/35.jpg)
Solution: Add-ons
![Page 36: How thousands of people collaborate on a global scale to create Firefox](https://reader036.vdocument.in/reader036/viewer/2022081403/554bbe6bb4c90594278b4f9a/html5/thumbnails/36.jpg)
Add-ons
• Little interference with release cycle
• Lower (technical) barrier to entry
• Ability to share prototypes with others
• Long tail of innovation
• Best ideas may be featured in a future version of Firefox (if useful for a majority and not introducing complexity)
![Page 37: How thousands of people collaborate on a global scale to create Firefox](https://reader036.vdocument.in/reader036/viewer/2022081403/554bbe6bb4c90594278b4f9a/html5/thumbnails/37.jpg)
Add-ons examples• Weave: synchronizing user profiles across several Firefox
instances (including mobile)
• AdBlock+: blocks advertising
• Flashblock: blocks Flash applets
• CustomizeGoogle: adds features to Gmail, remove redirects from search results
• MassPasswordReset: makes it easier to change your corporate password
• BetterPrivacy: removes ad-related tracking cookies
• ThiTan: Shortcut to create a wiki link and puts it into the clipboard
![Page 38: How thousands of people collaborate on a global scale to create Firefox](https://reader036.vdocument.in/reader036/viewer/2022081403/554bbe6bb4c90594278b4f9a/html5/thumbnails/38.jpg)
Issue: (even) more people could participate
• Despite add-ons, the learning curve is still too steep
• Non technical people are less likely to participate. What about designers?
• 330 million users, but only several thousand participants. How can we extend the reach of participation?
![Page 39: How thousands of people collaborate on a global scale to create Firefox](https://reader036.vdocument.in/reader036/viewer/2022081403/554bbe6bb4c90594278b4f9a/html5/thumbnails/39.jpg)
Enter Mozilla Labs
• Encourage Open Innovation through participation
• Monthly events IRL
• Dozens of experiments
• Organizing Contests
• Forums to encourage discussion and information sharing
![Page 40: How thousands of people collaborate on a global scale to create Firefox](https://reader036.vdocument.in/reader036/viewer/2022081403/554bbe6bb4c90594278b4f9a/html5/thumbnails/40.jpg)
Ubiquity
• “An experiment of connecting the Web with language”
• A command-line to interact with the Web
• Ability to easily create “verbs” to extend Ubiquity’s vocabulary and power.
![Page 41: How thousands of people collaborate on a global scale to create Firefox](https://reader036.vdocument.in/reader036/viewer/2022081403/554bbe6bb4c90594278b4f9a/html5/thumbnails/41.jpg)
Add-ons by Web devs
• Simple set of APIs enabling Web developers to create add-ons
• Lower barrier to entry, enable more participation
![Page 42: How thousands of people collaborate on a global scale to create Firefox](https://reader036.vdocument.in/reader036/viewer/2022081403/554bbe6bb4c90594278b4f9a/html5/thumbnails/42.jpg)
Personas: theming for non-tech users
![Page 43: How thousands of people collaborate on a global scale to create Firefox](https://reader036.vdocument.in/reader036/viewer/2022081403/554bbe6bb4c90594278b4f9a/html5/thumbnails/43.jpg)
Mozilla Creative Collective
• Grow the graphic design community
• Enable community-generated artwork
![Page 44: How thousands of people collaborate on a global scale to create Firefox](https://reader036.vdocument.in/reader036/viewer/2022081403/554bbe6bb4c90594278b4f9a/html5/thumbnails/44.jpg)
How can you participate?
• Use Firefox
• Use add-ons - addons.mozilla.org
• Spread the wordspreadfirefox.com
• Give us feedback - http://hendrix.mozilla.org/
• Write an Add-ondeveloper.mozilla.org
• Become a contributor