SlideShare a Scribd company logo
The Apache Way
Alan Gates
ASF Member, Apache Hive, Pig,
Incubator PMCs
2 © Hortonworks Inc. 2011 – 2016. All Rights Reserved
Introduction To Apache
 A non-profit foundation that manages open source projects
– Vast majority of work done by volunteers, a few paid positions (e.g. infrastructure)
 About 180 top level projects (TLPs) as of May 2017
– Covering many spaces such as big data, web serving, and J2EE
– Example TLPs: Hadoop, Spark, Tomcat, httpd
– Each one is managed by a Project Management Committee (PMC)
– Each project has a fair amount of room to make its own culture and rules
 Community over code
– The goal is to build communities that produce and support software
 New projects enter Apache through the Incubator
– Mentors train the project in the “Apache Way”
3 © Hortonworks Inc. 2011 – 2016. All Rights Reserved
Apache Roles
 Users – the millions who download and use Apache projects
 Contributors – those who contribute to an Apache project
– Not only developers, contributing tests & documentation, finding bugs, and helping others counts
 Committers – those who have write permission for the project
 Project Management Committee (PMC)
– Determines committers and other PMC members
– Approves releases
– Assures the project is operating in the “Apache Way”
– Reports regularly to the Apache Board
– All PMC members are also committers
 Apache Members – shareholders and caretakers of the foundation itself
– Can serve in the Incubator, on the Board, or in various other roles
 Apache Board – governs Apache, elected every year
 Apache Officers – appointed by board to define and execute policy
4 © Hortonworks Inc. 2011 – 2016. All Rights Reserved
The “Apache Way” – No Corporate Affiliations
 Everyone works in Apache as individuals, not employees of his or her company
– Some volunteers
– Many people paid by their employers to do open source
 Companies have no voice at Apache
– This means even those paying their employees to do open source cannot direct them how to vote,
which patches to approve, etc.
– It also means no one company runs the project, controls the process, etc.
– Companies can pay their employees to work on particular projects, add particular features, fix
particular bugs, etc.
 Many companies sponsor Apache
5 © Hortonworks Inc. 2011 – 2016. All Rights Reserved
The “Apache Way” - Meritocracy
 People are recognized in Apache for “just doing it”, leading by doing rather than by
talking
 Contributors who consistently make quality contributions and work well with the
project typically are voted in as committers by the PMC
 Committers who continue to contribute, work well with the team, and show they can
help guide the project typically are voted in as PMC members by the PMC
 Committers and PMC members who consistently contribute across projects or in
positions of leadership in the foundation are typically voted in as Apache members by
the other members
 Merit does not expire
 Merit does not transfer
– Being on one PMC does not give you standing in another
6 © Hortonworks Inc. 2011 – 2016. All Rights Reserved
The “Apache Way” - Collaboration
 The mailing lists are the official record of Apache interactions
– “If it didn’t happen on the lists, it didn’t happen”
– Non-list discussions need to be reported to the list
– JIRA, svn, git, etc. count, as all comments are copied to the mailing lists
– All lists archived
 Every project has a set of lists
– dev – for those developing the project, including feature discussions, releases
– private – only things that must be private, this list is only accessible by PMC and Apache members
– user – for users of a project, new projects often don’t have this
– some projects have commits, issues, or security lists as well
 Everything in Apache that can be public must be public
– Only personnel, security, legal, or other delicate matters should be discussed on private lists
7 © Hortonworks Inc. 2011 – 2016. All Rights Reserved
The “Apache Way” - Consensus
 Decisions are reached by consensus, not by force
 Votes formalize decisions
– +1: “do this, I am willing to help make it happen”
– +0: “do this, but I am not willing or able to help”
– -0: “I disagree, but will not stand in the way”
– -1: “I disagree because ...” All -1s must have a valid reason, else they are void
 All votes are equal, i.e. long time committers’ votes do not override newbie committer votes
 Voting done for many different decisions, by different groups, with different consensus required
Decision Who Votes? Consensus Min Votes
Add committer or PMC PMC Unanimous 3
Release PMC Majority 3
Review of patch committers Unanimous 0 or 1
8 © Hortonworks Inc. 2011 – 2016. All Rights Reserved
Who Decides What Gets Done?
 In proprietary software someone in management declares what will be done
 In Apache, no one is in charge
– BDFLs (benevolent dictators for life) specifically prohibited
 Each contributor works on what he or she wants to
– “Everyone scratches their own itches”
 A contribution can be blocked if
– It does not fit in the project (e.g. a contributor wants to turn Hadoop into an app server)
– It needs work and is not technically ready
– It breaks other things in the project
 But not if others aren’t excited by the feature
9 © Hortonworks Inc. 2011 – 2016. All Rights Reserved
Licenses
 All Apache projects use the Apache License
 Apache license is corporate friendly: users can copy, repackage, and even sell Apache
licensed software
 Some licenses are copyleft, meaning that if you make any changes or additions to the
code you must also open source your changes/additions (e.g. GPL)
 Apache license != Apache software, anyone can use the license
10 © Hortonworks Inc. 2011 – 2016. All Rights Reserved
Trademarks
 Some of Apache’s project names are registered, some are not
– e.g. Apache Hadoop® is registered, Apache Pig™ isn’t
– All are claimed by Apache as trademarks
 When referring to Apache projects in your documentation, slides, talks, etc. please have
the first reference include “Apache X”; after that it can just be “X”
 Your cannot say things that imply you own, drive, or control an Apache project; examples
of what not to do:
– Hortonworks Hadoop
– Hortonworks, the masters of Hadoop
– Hortonworks, the Hadoop company
 You can brag all you want about your contributions to the Apache projects, e.g. the
following is fine
– Hortonworks, the largest contributor to Apache Hadoop
 See the Apache Trademark page for full details
11 © Hortonworks Inc. 2011 – 2016. All Rights Reserved
Why Apache?
 Apache is a known and respected brand in the open source world
 Developing open source software owned by a 3rd party gives developers and users
confidence in the longevity and availability of the software
 Open source through a trusted group like Apache can be a big accelerator to market
adoption
 Working in Apache allows developers to collaborate with customers, partners, and
competitors to develop the best possible software
12 © Hortonworks Inc. 2011 – 2016. All Rights Reserved
Letting Your Employees Contribute
 Only you can answer whether they should, but some thoughts if you decide they can
 Benefit for you employees to be able to participate in open source communities
– Recognition outside your company
– A chance to work with great people all over the world on great software
– Can help you attract and retain talent
 Benefits for your company collaborating with customer, partners, and competitors
 Know that your employees speak for themselves in Apache
– You can tell them what you want them to work on
– You cannot tell them to block competitors’ work, committers, etc.
 Know that your employees will need to spend some time on community activities
(reviewing others patches, answering questions on the lists, reviewing releases, etc.)

More Related Content

PPT
Running Zeppelin in Enterprise
PPTX
Extending Apache Ranger Authorization Beyond Hadoop: Review of Apache Ranger ...
PPTX
Partner Ecosystem Showcase for Apache Ranger and Apache Atlas
PDF
The Apache Way
PPTX
Best Practices for Enterprise User Management in Hadoop Environment
PPTX
Its Finally Here! Building Complex Streaming Analytics Apps in under 10 min w...
PPTX
An Approach for Multi-Tenancy Through Apache Knox
PPTX
GDPR Community Showcase for Apache Ranger and Apache Atlas
Running Zeppelin in Enterprise
Extending Apache Ranger Authorization Beyond Hadoop: Review of Apache Ranger ...
Partner Ecosystem Showcase for Apache Ranger and Apache Atlas
The Apache Way
Best Practices for Enterprise User Management in Hadoop Environment
Its Finally Here! Building Complex Streaming Analytics Apps in under 10 min w...
An Approach for Multi-Tenancy Through Apache Knox
GDPR Community Showcase for Apache Ranger and Apache Atlas

What's hot (20)

PDF
Apache ranger meetup
PPTX
Securing Hadoop with Apache Ranger
PDF
Spark HBase Connector: Feature Rich and Efficient Access to HBase Through Spa...
PPTX
Ranger admin dev overview
PPTX
Apache Hadoop Security - Ranger
PPTX
Security and Data Governance using Apache Ranger and Apache Atlas
PPTX
Security and Governance on Hadoop with Apache Atlas and Apache Ranger by Srik...
PPTX
Classification based security in Hadoop
PPTX
Apache NiFi Toronto Meetup
PPTX
An Overview on Optimization in Apache Hive: Past, Present, Future
PPTX
Successes, Challenges, and Pitfalls Migrating a SAAS business to Hadoop
PPTX
Atlas and ranger epam meetup
PDF
TriHUG October: Apache Ranger
PPTX
Internet of things Crash Course Workshop
PDF
Getting involved with Open Source at the ASF
PPTX
Druid: Sub-Second OLAP queries over Petabytes of Streaming Data
PPTX
IoT with Apache MXNet and Apache NiFi and MiniFi
PPTX
Improvements in Hadoop Security
PDF
Curb your insecurity with HDP - Tips for a Secure Cluster
PDF
Spark HBase Connector: Feature Rich and Efficient Access to HBase Through Spa...
Apache ranger meetup
Securing Hadoop with Apache Ranger
Spark HBase Connector: Feature Rich and Efficient Access to HBase Through Spa...
Ranger admin dev overview
Apache Hadoop Security - Ranger
Security and Data Governance using Apache Ranger and Apache Atlas
Security and Governance on Hadoop with Apache Atlas and Apache Ranger by Srik...
Classification based security in Hadoop
Apache NiFi Toronto Meetup
An Overview on Optimization in Apache Hive: Past, Present, Future
Successes, Challenges, and Pitfalls Migrating a SAAS business to Hadoop
Atlas and ranger epam meetup
TriHUG October: Apache Ranger
Internet of things Crash Course Workshop
Getting involved with Open Source at the ASF
Druid: Sub-Second OLAP queries over Petabytes of Streaming Data
IoT with Apache MXNet and Apache NiFi and MiniFi
Improvements in Hadoop Security
Curb your insecurity with HDP - Tips for a Secure Cluster
Spark HBase Connector: Feature Rich and Efficient Access to HBase Through Spa...
Ad

Similar to The Apache Way (20)

PPTX
Hortonworks apache training
PDF
The Apache Way
ODP
The Apache Way
PDF
The Apache Way: A Proven Way Toward Success
ODP
The Apache Way olamy
ODP
The Apache Way
PDF
"Open Source and the Choice to Cooperate" by Brian Behlendorf @ eLiberatica 2007
PDF
Open Source at the Apache Software Foundation
ODP
The apacheway
PDF
The Apache Way
PDF
Profiting From Apache Brands Without Losing Your Soul
PPTX
Opensource development and apache software foundation
PDF
Integrate (Yourself) with the Apache Software Foundation - Full Version
PPTX
Introduction to Open Source, Apache and Apache Way
PDF
The Apache Way: Why we do what we do
PDF
Successfully Profiting From Apache Brands
PDF
The Apache Way of Open Source - re:publica 2018 Berlin
PPTX
The Apache Way - Dataworks Summit 2017
PDF
Running Successful Open Source Projects
PDF
Gardler bosc2010 community_developmentattheasf
Hortonworks apache training
The Apache Way
The Apache Way
The Apache Way: A Proven Way Toward Success
The Apache Way olamy
The Apache Way
"Open Source and the Choice to Cooperate" by Brian Behlendorf @ eLiberatica 2007
Open Source at the Apache Software Foundation
The apacheway
The Apache Way
Profiting From Apache Brands Without Losing Your Soul
Opensource development and apache software foundation
Integrate (Yourself) with the Apache Software Foundation - Full Version
Introduction to Open Source, Apache and Apache Way
The Apache Way: Why we do what we do
Successfully Profiting From Apache Brands
The Apache Way of Open Source - re:publica 2018 Berlin
The Apache Way - Dataworks Summit 2017
Running Successful Open Source Projects
Gardler bosc2010 community_developmentattheasf
Ad

More from DataWorks Summit (20)

PPTX
Data Science Crash Course
PPTX
Floating on a RAFT: HBase Durability with Apache Ratis
PPTX
Tracking Crime as It Occurs with Apache Phoenix, Apache HBase and Apache NiFi
PDF
HBase Tales From the Trenches - Short stories about most common HBase operati...
PPTX
Optimizing Geospatial Operations with Server-side Programming in HBase and Ac...
PPTX
Managing the Dewey Decimal System
PPTX
Practical NoSQL: Accumulo's dirlist Example
PPTX
HBase Global Indexing to support large-scale data ingestion at Uber
PPTX
Scaling Cloud-Scale Translytics Workloads with Omid and Phoenix
PPTX
Building the High Speed Cybersecurity Data Pipeline Using Apache NiFi
PPTX
Supporting Apache HBase : Troubleshooting and Supportability Improvements
PPTX
Security Framework for Multitenant Architecture
PDF
Presto: Optimizing Performance of SQL-on-Anything Engine
PPTX
Introducing MlFlow: An Open Source Platform for the Machine Learning Lifecycl...
PPTX
Extending Twitter's Data Platform to Google Cloud
PPTX
Event-Driven Messaging and Actions using Apache Flink and Apache NiFi
PPTX
Securing Data in Hybrid on-premise and Cloud Environments using Apache Ranger
PPTX
Big Data Meets NVM: Accelerating Big Data Processing with Non-Volatile Memory...
PDF
Computer Vision: Coming to a Store Near You
PPTX
Big Data Genomics: Clustering Billions of DNA Sequences with Apache Spark
Data Science Crash Course
Floating on a RAFT: HBase Durability with Apache Ratis
Tracking Crime as It Occurs with Apache Phoenix, Apache HBase and Apache NiFi
HBase Tales From the Trenches - Short stories about most common HBase operati...
Optimizing Geospatial Operations with Server-side Programming in HBase and Ac...
Managing the Dewey Decimal System
Practical NoSQL: Accumulo's dirlist Example
HBase Global Indexing to support large-scale data ingestion at Uber
Scaling Cloud-Scale Translytics Workloads with Omid and Phoenix
Building the High Speed Cybersecurity Data Pipeline Using Apache NiFi
Supporting Apache HBase : Troubleshooting and Supportability Improvements
Security Framework for Multitenant Architecture
Presto: Optimizing Performance of SQL-on-Anything Engine
Introducing MlFlow: An Open Source Platform for the Machine Learning Lifecycl...
Extending Twitter's Data Platform to Google Cloud
Event-Driven Messaging and Actions using Apache Flink and Apache NiFi
Securing Data in Hybrid on-premise and Cloud Environments using Apache Ranger
Big Data Meets NVM: Accelerating Big Data Processing with Non-Volatile Memory...
Computer Vision: Coming to a Store Near You
Big Data Genomics: Clustering Billions of DNA Sequences with Apache Spark

Recently uploaded (20)

PPTX
Big Data Technologies - Introduction.pptx
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PDF
NewMind AI Weekly Chronicles - August'25 Week I
PDF
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
PDF
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
PPTX
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
PDF
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
PPTX
20250228 LYD VKU AI Blended-Learning.pptx
PDF
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
PPT
Teaching material agriculture food technology
PDF
Encapsulation theory and applications.pdf
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PDF
KodekX | Application Modernization Development
PDF
Review of recent advances in non-invasive hemoglobin estimation
PPTX
Programs and apps: productivity, graphics, security and other tools
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PPTX
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
PPTX
sap open course for s4hana steps from ECC to s4
Big Data Technologies - Introduction.pptx
Reach Out and Touch Someone: Haptics and Empathic Computing
NewMind AI Weekly Chronicles - August'25 Week I
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
20250228 LYD VKU AI Blended-Learning.pptx
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
Diabetes mellitus diagnosis method based random forest with bat algorithm
Teaching material agriculture food technology
Encapsulation theory and applications.pdf
Digital-Transformation-Roadmap-for-Companies.pptx
KodekX | Application Modernization Development
Review of recent advances in non-invasive hemoglobin estimation
Programs and apps: productivity, graphics, security and other tools
Mobile App Security Testing_ A Comprehensive Guide.pdf
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
sap open course for s4hana steps from ECC to s4

The Apache Way

  • 1. The Apache Way Alan Gates ASF Member, Apache Hive, Pig, Incubator PMCs
  • 2. 2 © Hortonworks Inc. 2011 – 2016. All Rights Reserved Introduction To Apache  A non-profit foundation that manages open source projects – Vast majority of work done by volunteers, a few paid positions (e.g. infrastructure)  About 180 top level projects (TLPs) as of May 2017 – Covering many spaces such as big data, web serving, and J2EE – Example TLPs: Hadoop, Spark, Tomcat, httpd – Each one is managed by a Project Management Committee (PMC) – Each project has a fair amount of room to make its own culture and rules  Community over code – The goal is to build communities that produce and support software  New projects enter Apache through the Incubator – Mentors train the project in the “Apache Way”
  • 3. 3 © Hortonworks Inc. 2011 – 2016. All Rights Reserved Apache Roles  Users – the millions who download and use Apache projects  Contributors – those who contribute to an Apache project – Not only developers, contributing tests & documentation, finding bugs, and helping others counts  Committers – those who have write permission for the project  Project Management Committee (PMC) – Determines committers and other PMC members – Approves releases – Assures the project is operating in the “Apache Way” – Reports regularly to the Apache Board – All PMC members are also committers  Apache Members – shareholders and caretakers of the foundation itself – Can serve in the Incubator, on the Board, or in various other roles  Apache Board – governs Apache, elected every year  Apache Officers – appointed by board to define and execute policy
  • 4. 4 © Hortonworks Inc. 2011 – 2016. All Rights Reserved The “Apache Way” – No Corporate Affiliations  Everyone works in Apache as individuals, not employees of his or her company – Some volunteers – Many people paid by their employers to do open source  Companies have no voice at Apache – This means even those paying their employees to do open source cannot direct them how to vote, which patches to approve, etc. – It also means no one company runs the project, controls the process, etc. – Companies can pay their employees to work on particular projects, add particular features, fix particular bugs, etc.  Many companies sponsor Apache
  • 5. 5 © Hortonworks Inc. 2011 – 2016. All Rights Reserved The “Apache Way” - Meritocracy  People are recognized in Apache for “just doing it”, leading by doing rather than by talking  Contributors who consistently make quality contributions and work well with the project typically are voted in as committers by the PMC  Committers who continue to contribute, work well with the team, and show they can help guide the project typically are voted in as PMC members by the PMC  Committers and PMC members who consistently contribute across projects or in positions of leadership in the foundation are typically voted in as Apache members by the other members  Merit does not expire  Merit does not transfer – Being on one PMC does not give you standing in another
  • 6. 6 © Hortonworks Inc. 2011 – 2016. All Rights Reserved The “Apache Way” - Collaboration  The mailing lists are the official record of Apache interactions – “If it didn’t happen on the lists, it didn’t happen” – Non-list discussions need to be reported to the list – JIRA, svn, git, etc. count, as all comments are copied to the mailing lists – All lists archived  Every project has a set of lists – dev – for those developing the project, including feature discussions, releases – private – only things that must be private, this list is only accessible by PMC and Apache members – user – for users of a project, new projects often don’t have this – some projects have commits, issues, or security lists as well  Everything in Apache that can be public must be public – Only personnel, security, legal, or other delicate matters should be discussed on private lists
  • 7. 7 © Hortonworks Inc. 2011 – 2016. All Rights Reserved The “Apache Way” - Consensus  Decisions are reached by consensus, not by force  Votes formalize decisions – +1: “do this, I am willing to help make it happen” – +0: “do this, but I am not willing or able to help” – -0: “I disagree, but will not stand in the way” – -1: “I disagree because ...” All -1s must have a valid reason, else they are void  All votes are equal, i.e. long time committers’ votes do not override newbie committer votes  Voting done for many different decisions, by different groups, with different consensus required Decision Who Votes? Consensus Min Votes Add committer or PMC PMC Unanimous 3 Release PMC Majority 3 Review of patch committers Unanimous 0 or 1
  • 8. 8 © Hortonworks Inc. 2011 – 2016. All Rights Reserved Who Decides What Gets Done?  In proprietary software someone in management declares what will be done  In Apache, no one is in charge – BDFLs (benevolent dictators for life) specifically prohibited  Each contributor works on what he or she wants to – “Everyone scratches their own itches”  A contribution can be blocked if – It does not fit in the project (e.g. a contributor wants to turn Hadoop into an app server) – It needs work and is not technically ready – It breaks other things in the project  But not if others aren’t excited by the feature
  • 9. 9 © Hortonworks Inc. 2011 – 2016. All Rights Reserved Licenses  All Apache projects use the Apache License  Apache license is corporate friendly: users can copy, repackage, and even sell Apache licensed software  Some licenses are copyleft, meaning that if you make any changes or additions to the code you must also open source your changes/additions (e.g. GPL)  Apache license != Apache software, anyone can use the license
  • 10. 10 © Hortonworks Inc. 2011 – 2016. All Rights Reserved Trademarks  Some of Apache’s project names are registered, some are not – e.g. Apache Hadoop® is registered, Apache Pig™ isn’t – All are claimed by Apache as trademarks  When referring to Apache projects in your documentation, slides, talks, etc. please have the first reference include “Apache X”; after that it can just be “X”  Your cannot say things that imply you own, drive, or control an Apache project; examples of what not to do: – Hortonworks Hadoop – Hortonworks, the masters of Hadoop – Hortonworks, the Hadoop company  You can brag all you want about your contributions to the Apache projects, e.g. the following is fine – Hortonworks, the largest contributor to Apache Hadoop  See the Apache Trademark page for full details
  • 11. 11 © Hortonworks Inc. 2011 – 2016. All Rights Reserved Why Apache?  Apache is a known and respected brand in the open source world  Developing open source software owned by a 3rd party gives developers and users confidence in the longevity and availability of the software  Open source through a trusted group like Apache can be a big accelerator to market adoption  Working in Apache allows developers to collaborate with customers, partners, and competitors to develop the best possible software
  • 12. 12 © Hortonworks Inc. 2011 – 2016. All Rights Reserved Letting Your Employees Contribute  Only you can answer whether they should, but some thoughts if you decide they can  Benefit for you employees to be able to participate in open source communities – Recognition outside your company – A chance to work with great people all over the world on great software – Can help you attract and retain talent  Benefits for your company collaborating with customer, partners, and competitors  Know that your employees speak for themselves in Apache – You can tell them what you want them to work on – You cannot tell them to block competitors’ work, committers, etc.  Know that your employees will need to spend some time on community activities (reviewing others patches, answering questions on the lists, reviewing releases, etc.)