390 likes | 512 Views
The Why and How of Open Source software. Perspectives from the Apache Software Foundation. Ben Hyde Stefano Mazzocchi. Who we are. Ben ASF HTTPD PMC Intuit CMU, BBN, Intermetrics, Palladian, Lotus, Gensym Three children, Arlington Mass. Stefano ASF Cocoon PMC MIT Libraries
E N D
The Why and How of Open Source software Perspectives from the Apache Software Foundation Ben Hyde Stefano Mazzocchi
Who we are • Ben • ASF HTTPD PMC • Intuit • CMU, BBN, Intermetrics, Palladian, Lotus, Gensym • Three children, Arlington Mass. • Stefano • ASF Cocoon PMC • MIT Libraries • Just moved from Italy
Open up the source code? • Real • Cool • Ethical • Why • does this work? • How • Does this work? • Apache does it.
The numbers! • Every 6 Seconds • A new HTTPD Server server appears on the net. • Year after year; no sign of the bubble. • Consider SourceForge • The largest home for open Source Projects • .8 Million Users • 75 Thousand Projects • 1 Million Emails a day • Ben’s Project at Source Forge • Linux in every product at Demo this year! • Open source is redefining the industry. • Market Cap? Redhat $3 Billion, Yahoo $40B, …
Is this magic? • Scarcity? • No Scarcity of Talent • The entire planet. • No Scarcity of Ideas • Ideas aren’t scarce • What’s scarce is people in the right context • No Scarcity of Eyeballs to debug, polish, document. • Many kinds of talent • “No Scarcity, No Market, No Problem” • Would people write without publishers?
This is Ethical • A Community! • … not a market of buyers, sellers, middlemen • but there are market forces. • … not a structure of rules and procedures • but we have structures. • Just like a Library! • Avoid Rivalry • Avoid Exclusion • This is a “Public Good” • Will it be captured by the market?
Why does this work? • Communities rendezvous around • Common cause • Common rituals • Common sense of responsibility • For Open Source? Code is our Barn Raising • We rendezvous around the code • But we work hard to let people work in private. • We have ritualistic practices for reworking the code • These coordinate the work, maintain the quality, capture the value • We are loyal (locked-in) to this commons. • But you can always fork and go it alone; it happens. • For the Library? This is the collection.
Goods Supply Demand Needs Distributions Code Held in Common Users & Developers Trusted Core Developers Innovations, Ideas, Patches, documents,… How Does this Work?
Round About! Institution Building is hard work!
Virtuous Cycle -> Public Good Distributors Open Goods Stewards Users/Readers Innovators/Writers Cheap Storage, Cheap Communication, Self sustaining
The Apache Software Foundation • no-Profit organization • started in 1999 • incorporated in Delaware, USA • started by the Apache Group
Why a Foundation? (1) • provides a foundation for open, collaborative software development projects by supplying hardware, communication and business infrastructure
Why a Foundation? (2) • create an independent legal entity to which companies and individuals can donate resources and be assured that those resources will be used for the public benefit
Why a Foundation? (3) • provide a means for individual volunteers to be sheltered from legal suits directed at the Foundation’s projects
Why a Foundation? (4) • protect the brand, as applied to its software products, from being abused by other organizations.
Main Concepts • openness • diversity • software darwinism Let’s go thru them ->
Openness • everybody can use • everybody can join • everybody can disagree • everybody can propose changes • everybody can see everything
Diversity • diversity and openness are interlocked • diversity increases the ability to adapt • diversity enables to leverage a wide range of talent • respecting diversity reduces rivalry
Software Darwinism • software as an evolving entity • survives when fits the environmental needs • openness enables adaptation close to needs • user-driven development beats marketing-driven development: • faster evolution cycles • better interoperability • better platform stability
User • anybody who is a potential contributor
Committer • allowed to modify the code • we trust them • has voting rights • may propose new committers
Member • a members is a committers • shareholder of the foundation • can propose new members • can elect the board • can be a candidate for the board election
The Board of Directors • makes no technical decisions! • manages and oversights corporate assets (funds, intellectual property, trademarks and support equipment) • allocates corporate resources to the various projects • 9 members elected every year
The PMC • stands for Project Management Committee • manages a project (and its eventual sub-projects) • subject to the direction of the board • each PMC has the faculty of establishing its own set of rules and procedures for day-to-day project management ... • ... but many share the same
Common Day2Day Procedures • philosophy • coordination • decision making
Philosophy • collaborative software development • commercial-friendly license • high quality software • respectful, honest, technical-based interaction • faithful implementation of standards • security as a mandatory feature
Coordination • no meetings! • minimal plans • no common location • communication? email lists! • archives! history! • version control! [allows undo] • very distributed in time and space [enables greater participation]
Project Decision Making • encourage a bias for action • avoid rivalry thru modularity • negative votes imply a duty to engage in resolving the issue • very very rare to demand a quorum • together we call this “lazy consensus”
Foundation Operation • minimal physical plant [just the servers!] • no office space • no paid staff • all volunteers • some auxiliary committees: conferences for example