View stunning SlideShares in full-screen with the new iOS app!Introducing SlideShare for AndroidExplore all your favorite topics in the SlideShare appGet the SlideShare app to Save for Later — even offline
View stunning SlideShares in full-screen with the new Android app!View stunning SlideShares in full-screen with the new iOS app!
About: Apache The Foundation, The Apache Way,100+ Apache Projects Olivier Lamy | @olamy VP Apache Maven, ASF Member AFDEL Paris July 3rd 2012
AgendaWho am I: IntroductionWhat is it: Apache Software FoundationHow does it work: The Apache WayWho does the work: Apache projectsWhy Apache? Compare / Contrast open source groups
/meOlivier Lamy (@olamy ) (twitter.com/olamy)https://www.slideshare.net/olamyApache Software Foundation Member VP, Maven PMCs: Maven, Archiva, Tomcat, Sqoop, DirectMemory, Kalumet Commiter: CommonsJenkins etc.. (add bugs in various opensource projects)Also a Software Architect at Talend
CreditsSlides largely inspired from Shane Curcuru presentation: http://communityovercode.com/2012/05/camelo ne-2012-presentation/
What is it: The ASFMembership-based corporation; Non-profit US 501(c)3 CharityDirectors, officers all unpaid volunteersPaid contractors: sysadmins, press officerBroad-based Membership of individuals ensures independenceCollection of Apache project communities
Apache Org Chart Nominate, elect Members Directors annually Organizational ~400 Oversight Technical Board of Oversight Nominate, elect 9 Directors new members Create & update Appoint officers upon PMC request Report monthly Report quarterly PMCs Officers 100++ ~10Define organizational & legal policies Committers Nominate, elect Vote for ~3,000 new committers project releases Write project code
Apache Board of DirectorsElected by ASF Membership annuallyLong-time directors: Jim Jagielski, Greg Stein, Roy Fielding, Sam RubyNewer directors: Bertrand Delacretaz, Doug Cutting, Shane Curcuru, Brett Porter, Rich Bowen, Ross GardlerProvide legal and organizational oversight
Apache Mission: WhatProvide open source software to the public free of charge
Apache Mission: WhatProvide open source software to the public free of charge “Apache aims to provide a pragmatic, non-technical framework to its projects.” - Justin ErenkrantzLet coders code; Foundation exists to do rest
Apache Mission: HowProvide legal, organizational, and technical infrastructure for open source software development, and perform oversight to ensure project independenceProvide shelter for individual volunteers from legal suits directed at Apache projectsProvide a legal entity to serve as an independent recipient of donations
Budget and SponsorshipAnnual budget: est. 790K USD in 2012Sponsorship program ensures independencePrimary budget categories: sysadmin contractors; hardware & bandwidth; publicityApache does not pay for software development
Apache SponsorsPlatinum: Citrix, Facebook, Google, Microsoft, Yahoo!Gold: AMD, Hortonworks, HP, IBMSilver: Basis Technology, Cloudera, Go Daddy, Huawei, Matt Mullenweg, PSW Group, SpringSourceBronze: AirPlus Intl., BlueNog, Digital Primates, FuseSource, Intuit, Liip AG SA Ltd., Lucid Imagination, Talend, Twitter, Two Sigma Investments, WANdiscoSeparately: Long-term hosting & bandwidth providers
Apache LicenseApache projects use the Apache License 2.0Pragmatic and permissive Maximum freedom for usersIncludes patent grantEasily and frequently used by other groups
Contributor License AgreementsAKA “ICLA” for Individuals – 4649 signed ICLA required to become committerCCLA for Corporations – 318 signedEnsures that contributors have the right to contribute, and that ASF has right to license to the public under Apache licenseNo copyright assignments – only a license
The Apache Way How does it worksMeritocracy – those who do, decidePeer-based – participate as individualsOversight – responsible and independentDecisions – made by consensusCollaboration – public and asynchronousParticipation – by individuals
Apache Way: MeritMerit is based on actual accomplishments within a projectExisting community measures valueMerit never expiresMerit is not transferable
Apache Way: OversightPMCs provide technical oversight of all project releases, new committers/PMC members Ensure clean IP in all Apache releasesBoard provides organizational oversight of all Apache projects Ensure PMCs function independently
Apache Way: DecisionsDecisions made by consensus, discussion If consensus is not obvious, then voteVotes are by +1 / +-0 / -1All -1 or veto votes must have a reason Releases may not be vetoedPMCs vote on all releases Committers vote on code changes
Apache Way: Collaboration“If it didnt happen on the mailing list, it didnt happen.” - Roy FieldingAny discussions F2F, IRC, wherever must be reported back to mailing listAll decisions must be made on-list, and with a 72+ hour window for voting/discussionLists are asynchronous and publicly archived
Apache Way: ParticipationCommitters participate as individuals Expected to wear appropriate “hat”Releases must have three binding +1 votes Ensures multiple and independent eyesCorporations are never made committers, members, nor PMC members
Apache ProjectsOver 100 code-producing community driven projects 50+ Podlings in Incubation“Apache Projects include millions of lines of code overseen by an all-volunteer community across six continents. Apache technologies power more than half the Internet, petabytes of data, teraflops of operations, billions of objects, and enhance the lives of countless users and developers.”
Apache Projects: IncubatorNew project proposals are made to the Apache Incubator PMC PMC votes to accept on community meritsIncubation process ensures podling community understands Apache Way No technical direction required by incubationPMC votes to graduate podlings to TLPs (Top Level Projects)
Apache Projects: AtticProjects that cannot reliably report and/or find three +1 PMC votes to create releasesWhen community lacks participation or diversity – not for technical reasonsBoard votes to “box up” the project and place in the AtticAll resources are read-only for posterity
Apache Projects: TechnologyApache projects provide leading technology: Webservers, Java tools & stacks, search, cloud, big data, build tools, CMS/web framework, databases, OSGi containers, graphics ... And end user Office suites!“Competing” project technology is OK If an active community following the Apache Way wants to join, great!
Apache Projects: DevelopmentApache never pays for developmentSome committers/PMC members are corporate sponsored; some are not Consultants, authors, students, researchersEach Apache project is an independent community of committers and users
Apache Projects: Join Now!To join a project, subscribe to the mailing listAll productive input is appreciatedPMC members nominate and vote new committers periodicallyEvery project has different expectationsMany ways to contribute: patches, bugs, documentation, training, graphics,...
Dont Feed The TrollsAll-inclusive public discussions and archives sometimes bring out the worst in people Dont let them derail community“How Open Source Projects Survive Poisonous People (And You Can Too)” Ben Collins-Sussman & Brian Fitzpatrick http://s.apache.org/DontFeedTheTrolls
Why Apache?Who am I: IntroductionWhat is it: Apache Software FoundationHow does it work: The Apache WayWho does the work: Apache projectsWhy Apache? Compare / Contrast open source groups
Apache and EclipseApache: Eclipse:Multiple projects Multiple projectsPermissive license Semi-copyleft licenseIndividual members Corporate backingFree to participate Membership dues One key difference: Eclipse governance & board includes Strategic Developers & Consumers – corporations.
Apache and OutercurveApache: Outercurve/CodePlex:Multiple projects Multiple projectsPermissive license Various licensesIndividual members Corporate backingBoard oversight Individual governance One key difference: Microsoft backing, and each project provides own style and set of governance.
Apache and PythonApache: Python:Multiple projects Single projectPermissive license Permissive licenseIndividual members Individual membersIndependent board Guido as BDFL One key difference: Python focuses on just the programming language.
Apache and MozillaApache: Mozilla:Multiple projects Multiple projectsPermissive license Semi-copyleft licenseIndividual members Corporate staffNo specific technical End user project focus focus One key difference: Mozillas end user focus means different level of marketing, trademark, and release management.
Apache SimilaritiesWhats similar about these groups?Most explicitly adopted parts of Apache WayVoting; consensus & community; meritIndependent foundationsSeveral have explicitly noted the copying of their ways from Apache
Apaches Tagline“We are more than a group of projects sharing a server; we are a community of developers and users... sharing a common Apache Way of developing software.” “Community over Code”
Thank You!Questions? @olamyLearn more about Apache: http://community.apache.org/