SlideShare uma empresa Scribd logo
1 de 43
Apache:
   Code, Community and
      Open Source
J i m   J a g i e l s k i   | |   @ j i m j a g
Agenda

Introduction

Overview of the ASF

The What and Why of “Open Source”

The Lessons Learned by the ASF - The Apache
Way


         This work is licensed under a Creative Commons Attribution 3.0 Unported License.
Introduction
Jim Jagielski

  Longest still-active developer/contributor

  Co-founder of the ASF

  Member, Director and President

  Director: Outercurve and OSI

  Consulting Engineer with Red Hat

          This work is licensed under a Creative Commons Attribution 3.0 Unported License.
The ASF

ASF == The Apache Software Foundation

Before the ASF there was “The Apache
Group”

The ASF was incorporated in 1999



         This work is licensed under a Creative Commons Attribution 3.0 Unported License.
The ASF
Non-profit corporation founded in 1999

501( c )3 public charity

Volunteer organization (The ASF doesn’t pay
anyone to work on Apache projects)

Virtual world-wide organization - Membership of
Individuals

Exists to provide the organizational, legal, and
financial support for various OSS projects - let the
developers develop

            This work is licensed under a Creative Commons Attribution 3.0 Unported License.
Structure of the
    ASF - legal
Member-based corporation - individuals only

Members nominate and elect new members

Members elect a board - 9 seats

Semi-annual meetings via IRC

Each PMC has a Chair - eyes and ears of the
board (oversight only)

          This work is licensed under a Creative Commons Attribution 3.0 Unported License.
ASF “Org Chart”
Technical Oversight
              Organizational Oversight
           Development                                                         Administrative
PMCs      PMC Members
(TLPs)                            ~2000                                                Members
                                                                                                      ~400
                                                                                                                Elects
           Committers
~100                              ~4500


           Contributors                                                                 Officers
                                                                                                       ~100

                                                                                   Appoints           Reports
         Patchers/Buggers

                  Users                                   Creates                             Board      9
                                                             &
                                                          Updates




           This work is licensed under a Creative Commons Attribution 3.0 Unported License.
Issues with Dual
       Stacks
Despite clear differentiation, sometimes there
are leaks

  eg: PMC chair seen as “lead” developer

Sometimes officers are assumed to have too
much power if they venture into development
issues

  “hats”

           This work is licensed under a Creative Commons Attribution 3.0 Unported License.
The ASF’s Mission
Provide open source software to the public
free of charge

Provide a foundation for open, collaborative
software development projects by supplying
hardware, communication, and business
infrastructure

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
          This work is licensed under a Creative Commons Attribution 3.0 Unported License.
The ASF’s Mission
Provide a means for individual volunteers to be
sheltered from legal suits directed at the
Foundation’s projects

Protect the ‘Apache’ brand, as applied to its
software products, from being abused by other
organizations

Provide legal and technical infrastructure for
open source software development and to
perform appropriate oversight of such software

           This work is licensed under a Creative Commons Attribution 3.0 Unported License.
Vision Statement
The Apache Software Foundation provides
support for the Apache community of open-
source software projects. The Apache projects
are characterized by a collaborative,
consensus based development process, an
open and pragmatic software license, and a
desire to create high quality software that
leads the way in its field. We consider
ourselves not simply a group of projects
sharing a server, but rather a community of
developers and users.
          This work is licensed under a Creative Commons Attribution 3.0 Unported License.
Vision Statement,
                                Take 2




Community created code

Our code should be exceptional




         This work is licensed under a Creative Commons Attribution 3.0 Unported License.
Why Open Source?
Access to the source code

Avoid vendor lock-in (or worse!)

Much better software

Better security record (more eyes)

Much more nimble development - frequent
releases

Direct user input
          This work is licensed under a Creative Commons Attribution 3.0 Unported License.
The draw of Open
      Source
Having a real impact in the development and
direction of IT

Personal satisfaction: I wrote that!

Sense of membership in a community

Sense of accomplishment - very quick
turnaround times

Developers and engineers love to tinker -
huge opportunity to do so
          This work is licensed under a Creative Commons Attribution 3.0 Unported License.
Open Source FUD

No quality or quality control

Prevents or slows development

Have to “give it away for free”

No real innovation



          This work is licensed under a Creative Commons Attribution 3.0 Unported License.
What is Open
         Source?
Open Source Licensing

  OSI Approved

Free Software

  As in Free Speech, not Free Beer

Open Source Methodology (secondary)

  ala, the Apache Software Foundation

           This work is licensed under a Creative Commons Attribution 3.0 Unported License.
Open Source
       Licenses
Give Me Credit

 AL, BSD, MIT

Give Me Fixes

 (L)GPL, EPL, MPL

Give Me Everything

 GPL
                                              - Dave Johnson
                                              http://rollerweblogger.org/page/roller?entry=gimme_credit_gimme_fixes_gimmem


         This work is licensed under a Creative Commons Attribution 3.0 Unported License.
The Apache License
       (AL)
A liberal open source software license - BSD-
like

Business friendly

Requires attribution

Includes Patent Grant

Easily reused by other projects &
organizations

          This work is licensed under a Creative Commons Attribution 3.0 Unported License.
License Differences
Mainly involve the licensing of derivative
works

Only really applies during (re)distribution of
work

Where the “freedom” should be mostly
focused: the user or the code itself

Be careful when mixing licenses!

          This work is licensed under a Creative Commons Attribution 3.0 Unported License.
One True License
There is no such thing

Licensing is selected to address what you are
trying to do

In general, Open Standards do better with
AL-like license

If wide adoption is important to you: again
AL.

          This work is licensed under a Creative Commons Attribution 3.0 Unported License.
The Apache Way

Although the term is deprecated, “The
Apache Way” relates to how the ASF (and its
projects) work and operate

Basically, the least common denominators on
how PMCs operate



          This work is licensed under a Creative Commons Attribution 3.0 Unported License.
Why focus on ASF ?




                                                            http://www.zdnet.com/blog/open-source/oracle-gives-
                                                                        openoffice-to-apache/9035




 http://webmink.com/essays/#OBR
              This work is licensed under a Creative Commons Attribution 3.0 Unported License.
Basic Memes
Meritocracy

Peer-based

Consensus decision making

Collaborative development

Responsible oversight

Individual Participation

          This work is licensed under a Creative Commons Attribution 3.0 Unported License.
Meritocracy

“Govern by Merit”

Merit is based on what you do

Merit never expires

Those with merit, get more responsibility

Provides incentive to Do More


          This work is licensed under a Creative Commons Attribution 3.0 Unported License.
Peer-based
Developers represent themselves - individuals

Mutual trust and respect

All votes hold the same weight (no BDFL)

Community created code

  Healthy communities create healthy code

  Poisonous communities don’t

Feel as part of a community

           This work is licensed under a Creative Commons Attribution 3.0 Unported License.
Why Community ->
     Code
Since we are all volunteers, people’s time and
interests change

A healthy community is “warm and inviting”
and encourages a continued influx of
developers

Poisonous people/communities turn people
off, and the project will die

End result - better code, long-term code

          This work is licensed under a Creative Commons Attribution 3.0 Unported License.
Consensus decision
     making
Key is the idea of voting

  +1 - yes

  +0 - no real comment

  -1 - veto

Sometimes you’ll also see stuff like -0, -0.5,
etc...

              This work is licensed under a Creative Commons Attribution 3.0 Unported License.
Voting

The main intent is to gauge developer
acceptance

Vetos must be justifiable and have sound
technical merit

If valid, Vetos cannot be overruled

Vetos are very rare


          This work is licensed under a Creative Commons Attribution 3.0 Unported License.
Commit Process
Review Then Commit (RTC)

 A patch is submitted to the project for
 inclusion

 If at least 3 +1s and no -1s, code is
 committed

 Good for stable branches

 Ensures enough “eyes on the code” on a
 direct-to-release path
          This work is licensed under a Creative Commons Attribution 3.0 Unported License.
Commit Process
Commit Then Review (CTR)

 A patch is committed directly to the code

 Review Process happens post commit

 Good for development branches

 Depends on people doing reviews after the
 fact

 Allows very fast development
         This work is licensed under a Creative Commons Attribution 3.0 Unported License.
Commit Process
Lazy Consensus

 variant of RTC

 “I plan on committing this in 3 days”

 Provides opportunity for oversight, but
 with known “deadline”

 As always, can be vetoed after the fact

         This work is licensed under a Creative Commons Attribution 3.0 Unported License.
Collaborative
     Development

Code is developed by the community

Voting ensures at least 3 active developers

Development done online and on-list

  If it didn’t happen on-list, it didn’t happen



          This work is licensed under a Creative Commons Attribution 3.0 Unported License.
Collaborative
     Development

Mailing lists are the preferred method

  Archived

  Asynchronous

  Available to anyone - public list



          This work is licensed under a Creative Commons Attribution 3.0 Unported License.
Collaborative
     Development
Other methods are OK, if not primary

  Wikis

  IRC

  F2F

Always bring back to the list


          This work is licensed under a Creative Commons Attribution 3.0 Unported License.
Responsible
       Oversight

Ensure license compliance

Track IP

Quality code

Quality community



           This work is licensed under a Creative Commons Attribution 3.0 Unported License.
Look Familiar?


These concepts are not new or unique

Best practices regarding how the Scientific
and Health community works




          This work is licensed under a Creative Commons Attribution 3.0 Unported License.
Publish or Perish

In Open Source, frequent releases indicate
healthy activity

What is collaborative s/w development other
than peer review?

Think how restrictive research would be w/o
open communication


          This work is licensed under a Creative Commons Attribution 3.0 Unported License.
The Apache
        Incubator

Entry point for all new projects and
codebases

Indoctrinates the Apache Way to the podling

Ensures and tracks IP



          This work is licensed under a Creative Commons Attribution 3.0 Unported License.
Contributor License
          Agreement
aka: iCLA (for individual)

Required of all committers

Guarantees:

  The person has the authority to commit the
  code

  That the ASF can relicense the code

Does NOT assign copyright
          This work is licensed under a Creative Commons Attribution 3.0 Unported License.
Development
The ASF never pays for development of projects

Some contributors are corporate sponsored,
some aren’t but as far as the ASF is concerned it
makes no difference!

Diversity == Independence

git-like mega merges are counter-productive

Code is one form of contributing, not the only
form.

           This work is licensed under a Creative Commons Attribution 3.0 Unported License.
Other Foundations
Foundations (independent) are critical for
widespread adoption of s/w

ASF: totally vendor neutral - Sponsors don’t
control/manage/direct the foundation nor
projects

“There are other ways of doing things, what
we’ve been doing has simply be proven to be
one of the best.”

          This work is licensed under a Creative Commons Attribution 3.0 Unported License.
Helpful links
The Apache Software Foundation

  www.apache.org

  community.apache.org

Red Hat, Inc (my employer)

  www.redhat.com

CloudStack podling

  incubator.apache.org/cloudstack/

          This work is licensed under a Creative Commons Attribution 3.0 Unported License.
That’s It

Thank you!

Any questions?

 @jimjag | www.slideshare.net/jimjag

 jim@jaguNET.com



         This work is licensed under a Creative Commons Attribution 3.0 Unported License.

Mais conteúdo relacionado

Destaque

Navigating the Incubator at the Apache Software Foundation
Navigating the Incubator at the Apache Software FoundationNavigating the Incubator at the Apache Software Foundation
Navigating the Incubator at the Apache Software Foundation
Brett Porter
 
Open source masterclass - Life in the Apache Incubator
Open source masterclass - Life in the Apache IncubatorOpen source masterclass - Life in the Apache Incubator
Open source masterclass - Life in the Apache Incubator
Jukka Zitting
 

Destaque (20)

Three Shall Be The Number
Three Shall Be The NumberThree Shall Be The Number
Three Shall Be The Number
 
ApacheCon 2014 - What's New in Apache httpd 2.4
ApacheCon 2014 - What's New in Apache httpd 2.4ApacheCon 2014 - What's New in Apache httpd 2.4
ApacheCon 2014 - What's New in Apache httpd 2.4
 
Running Successful Open Source Projects
Running Successful Open Source ProjectsRunning Successful Open Source Projects
Running Successful Open Source Projects
 
Acus08 State Of The Feather
Acus08 State Of The FeatherAcus08 State Of The Feather
Acus08 State Of The Feather
 
Apache State of the Feather 2010
Apache State of the Feather 2010Apache State of the Feather 2010
Apache State of the Feather 2010
 
Understanding Open Source Licenses
Understanding Open Source LicensesUnderstanding Open Source Licenses
Understanding Open Source Licenses
 
Governance and Communities
Governance and CommunitiesGovernance and Communities
Governance and Communities
 
Apache httpd-2.4 : Watch out cloud!
Apache httpd-2.4 : Watch out cloud!Apache httpd-2.4 : Watch out cloud!
Apache httpd-2.4 : Watch out cloud!
 
Open Source Management
Open Source ManagementOpen Source Management
Open Source Management
 
What is "Open Source"
What is "Open Source"What is "Open Source"
What is "Open Source"
 
Apache httpd 2.4: The Cloud Killer App
Apache httpd 2.4: The Cloud Killer AppApache httpd 2.4: The Cloud Killer App
Apache httpd 2.4: The Cloud Killer App
 
ApacheConNA 2015: What's new in Apache httpd 2.4
ApacheConNA 2015: What's new in Apache httpd 2.4ApacheConNA 2015: What's new in Apache httpd 2.4
ApacheConNA 2015: What's new in Apache httpd 2.4
 
Drupal Camp Balto 2015
Drupal Camp Balto 2015Drupal Camp Balto 2015
Drupal Camp Balto 2015
 
Open source101 licenses
Open source101 licensesOpen source101 licenses
Open source101 licenses
 
Keynote from the Open Source 101 Conference
Keynote from the Open Source 101 ConferenceKeynote from the Open Source 101 Conference
Keynote from the Open Source 101 Conference
 
Apache httpd 2.4 Reverse Proxy
Apache httpd 2.4 Reverse ProxyApache httpd 2.4 Reverse Proxy
Apache httpd 2.4 Reverse Proxy
 
InnerSource: Enterprise Lessons from Open Source
InnerSource: Enterprise Lessons from Open SourceInnerSource: Enterprise Lessons from Open Source
InnerSource: Enterprise Lessons from Open Source
 
ApacheConNA 2015: Apache httpd 2.4 Reverse Proxy
ApacheConNA 2015: Apache httpd 2.4 Reverse ProxyApacheConNA 2015: Apache httpd 2.4 Reverse Proxy
ApacheConNA 2015: Apache httpd 2.4 Reverse Proxy
 
Navigating the Incubator at the Apache Software Foundation
Navigating the Incubator at the Apache Software FoundationNavigating the Incubator at the Apache Software Foundation
Navigating the Incubator at the Apache Software Foundation
 
Open source masterclass - Life in the Apache Incubator
Open source masterclass - Life in the Apache IncubatorOpen source masterclass - Life in the Apache Incubator
Open source masterclass - Life in the Apache Incubator
 

Semelhante a Code, Community, and Open Source

Opensource development and apache software foundation
Opensource development and apache software foundationOpensource development and apache software foundation
Opensource development and apache software foundation
Eran Chinthaka Withana
 
Copyright in Software and Open Source licensing
Copyright in Software and Open Source licensingCopyright in Software and Open Source licensing
Copyright in Software and Open Source licensing
Rowan Wilson
 
Open Source Presentation To Portal Partners2
Open Source Presentation To Portal Partners2Open Source Presentation To Portal Partners2
Open Source Presentation To Portal Partners2
Viet NguyenHoang
 

Semelhante a Code, Community, and Open Source (20)

The Apache Way: Why we do what we do
The Apache Way: Why we do what we doThe Apache Way: Why we do what we do
The Apache Way: Why we do what we do
 
Craig The apache Way
Craig The apache Way Craig The apache Way
Craig The apache Way
 
Opensource development and apache software foundation
Opensource development and apache software foundationOpensource development and apache software foundation
Opensource development and apache software foundation
 
Open Source at Scale: the Apache Software Foundation (2018)
Open Source at Scale: the Apache Software Foundation (2018)Open Source at Scale: the Apache Software Foundation (2018)
Open Source at Scale: the Apache Software Foundation (2018)
 
Understanding Open Source Class 101
Understanding Open Source Class 101Understanding Open Source Class 101
Understanding Open Source Class 101
 
Open Source 101 - GWO2016
Open Source 101 - GWO2016Open Source 101 - GWO2016
Open Source 101 - GWO2016
 
What to expect when you're Incubating
What to expect when you're IncubatingWhat to expect when you're Incubating
What to expect when you're Incubating
 
Open Source & Open Development
Open Source & Open Development Open Source & Open Development
Open Source & Open Development
 
Open Source SW Business
Open Source SW Business Open Source SW Business
Open Source SW Business
 
Open Source Software in Libraries
Open Source Software in LibrariesOpen Source Software in Libraries
Open Source Software in Libraries
 
Open Source: What’s this all about?
Open Source: What’s this all about?Open Source: What’s this all about?
Open Source: What’s this all about?
 
Open source technologies
Open source technologiesOpen source technologies
Open source technologies
 
Open source technologies
Open source technologiesOpen source technologies
Open source technologies
 
Building a Great Team in Open Source - Open Agile 2011
Building a Great Team in Open Source - Open Agile 2011Building a Great Team in Open Source - Open Agile 2011
Building a Great Team in Open Source - Open Agile 2011
 
The Apache Way
The Apache WayThe Apache Way
The Apache Way
 
Open Source Your Project (With Jasig)
Open Source Your Project (With Jasig)Open Source Your Project (With Jasig)
Open Source Your Project (With Jasig)
 
Leverage the power of Open Source in your company
Leverage the power of Open Source in your company Leverage the power of Open Source in your company
Leverage the power of Open Source in your company
 
Open Source Licenses
Open Source LicensesOpen Source Licenses
Open Source Licenses
 
Copyright in Software and Open Source licensing
Copyright in Software and Open Source licensingCopyright in Software and Open Source licensing
Copyright in Software and Open Source licensing
 
Open Source Presentation To Portal Partners2
Open Source Presentation To Portal Partners2Open Source Presentation To Portal Partners2
Open Source Presentation To Portal Partners2
 

Mais de Jim Jagielski

Mais de Jim Jagielski (20)

OSPOS: AllThingsOpen 2023
OSPOS: AllThingsOpen 2023OSPOS: AllThingsOpen 2023
OSPOS: AllThingsOpen 2023
 
Open Source Licenses and IP Overview
Open Source Licenses and IP OverviewOpen Source Licenses and IP Overview
Open Source Licenses and IP Overview
 
The History of The Apache Software Foundation
The History of The Apache Software FoundationThe History of The Apache Software Foundation
The History of The Apache Software Foundation
 
Reverse proxy magic
Reverse proxy magicReverse proxy magic
Reverse proxy magic
 
Apache httpd 2.4 overview
Apache httpd 2.4 overviewApache httpd 2.4 overview
Apache httpd 2.4 overview
 
The Apache Way
The Apache WayThe Apache Way
The Apache Way
 
Not your daddy's web server
Not your daddy's web serverNot your daddy's web server
Not your daddy's web server
 
Apache httpd Reverse Proxy and Tomcat
Apache httpd Reverse Proxy and TomcatApache httpd Reverse Proxy and Tomcat
Apache httpd Reverse Proxy and Tomcat
 
Starting an Open Source Program Office
Starting an Open Source Program OfficeStarting an Open Source Program Office
Starting an Open Source Program Office
 
InnerSource 101 for FinTech and FinServ
InnerSource 101 for FinTech and FinServInnerSource 101 for FinTech and FinServ
InnerSource 101 for FinTech and FinServ
 
All Things Open 2017: Open Source Licensing
All Things Open 2017: Open Source LicensingAll Things Open 2017: Open Source Licensing
All Things Open 2017: Open Source Licensing
 
All Things Open 2017: The Apache Software Foundation 101
All Things Open 2017: The Apache Software Foundation 101All Things Open 2017: The Apache Software Foundation 101
All Things Open 2017: The Apache Software Foundation 101
 
All Things Open 2017: Foundations of Inner Source
All Things Open 2017: Foundations of Inner SourceAll Things Open 2017: Foundations of Inner Source
All Things Open 2017: Foundations of Inner Source
 
ApacheCon 2017: What's new in httpd 2.4
ApacheCon 2017: What's new in httpd 2.4ApacheCon 2017: What's new in httpd 2.4
ApacheCon 2017: What's new in httpd 2.4
 
ApacheCon 2017: InnerSource and The Apache Way
ApacheCon 2017: InnerSource and The Apache WayApacheCon 2017: InnerSource and The Apache Way
ApacheCon 2017: InnerSource and The Apache Way
 
Open Source Licensing 101
Open Source Licensing 101Open Source Licensing 101
Open Source Licensing 101
 
InnerSource 101 and The Apache Way
InnerSource 101 and The Apache WayInnerSource 101 and The Apache Way
InnerSource 101 and The Apache Way
 
Apache httpd 2.4 Reverse Proxy: The Hidden Gem
Apache httpd 2.4 Reverse Proxy: The Hidden GemApache httpd 2.4 Reverse Proxy: The Hidden Gem
Apache httpd 2.4 Reverse Proxy: The Hidden Gem
 
ApacheCon EU 2016 State of the Feather
ApacheCon EU 2016 State of the FeatherApacheCon EU 2016 State of the Feather
ApacheCon EU 2016 State of the Feather
 
What's New and Newer in Apache httpd-24
What's New and Newer in Apache httpd-24What's New and Newer in Apache httpd-24
What's New and Newer in Apache httpd-24
 

Último

Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Victor Rentea
 

Último (20)

ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 

Code, Community, and Open Source

  • 1. Apache: Code, Community and Open Source J i m J a g i e l s k i | | @ j i m j a g
  • 2. Agenda Introduction Overview of the ASF The What and Why of “Open Source” The Lessons Learned by the ASF - The Apache Way This work is licensed under a Creative Commons Attribution 3.0 Unported License.
  • 3. Introduction Jim Jagielski Longest still-active developer/contributor Co-founder of the ASF Member, Director and President Director: Outercurve and OSI Consulting Engineer with Red Hat This work is licensed under a Creative Commons Attribution 3.0 Unported License.
  • 4. The ASF ASF == The Apache Software Foundation Before the ASF there was “The Apache Group” The ASF was incorporated in 1999 This work is licensed under a Creative Commons Attribution 3.0 Unported License.
  • 5. The ASF Non-profit corporation founded in 1999 501( c )3 public charity Volunteer organization (The ASF doesn’t pay anyone to work on Apache projects) Virtual world-wide organization - Membership of Individuals Exists to provide the organizational, legal, and financial support for various OSS projects - let the developers develop This work is licensed under a Creative Commons Attribution 3.0 Unported License.
  • 6. Structure of the ASF - legal Member-based corporation - individuals only Members nominate and elect new members Members elect a board - 9 seats Semi-annual meetings via IRC Each PMC has a Chair - eyes and ears of the board (oversight only) This work is licensed under a Creative Commons Attribution 3.0 Unported License.
  • 7. ASF “Org Chart” Technical Oversight Organizational Oversight Development Administrative PMCs PMC Members (TLPs) ~2000 Members ~400 Elects Committers ~100 ~4500 Contributors Officers ~100 Appoints Reports Patchers/Buggers Users Creates Board 9 & Updates This work is licensed under a Creative Commons Attribution 3.0 Unported License.
  • 8. Issues with Dual Stacks Despite clear differentiation, sometimes there are leaks eg: PMC chair seen as “lead” developer Sometimes officers are assumed to have too much power if they venture into development issues “hats” This work is licensed under a Creative Commons Attribution 3.0 Unported License.
  • 9. The ASF’s Mission Provide open source software to the public free of charge Provide a foundation for open, collaborative software development projects by supplying hardware, communication, and business infrastructure 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 This work is licensed under a Creative Commons Attribution 3.0 Unported License.
  • 10. The ASF’s Mission Provide a means for individual volunteers to be sheltered from legal suits directed at the Foundation’s projects Protect the ‘Apache’ brand, as applied to its software products, from being abused by other organizations Provide legal and technical infrastructure for open source software development and to perform appropriate oversight of such software This work is licensed under a Creative Commons Attribution 3.0 Unported License.
  • 11. Vision Statement The Apache Software Foundation provides support for the Apache community of open- source software projects. The Apache projects are characterized by a collaborative, consensus based development process, an open and pragmatic software license, and a desire to create high quality software that leads the way in its field. We consider ourselves not simply a group of projects sharing a server, but rather a community of developers and users. This work is licensed under a Creative Commons Attribution 3.0 Unported License.
  • 12. Vision Statement, Take 2 Community created code Our code should be exceptional This work is licensed under a Creative Commons Attribution 3.0 Unported License.
  • 13. Why Open Source? Access to the source code Avoid vendor lock-in (or worse!) Much better software Better security record (more eyes) Much more nimble development - frequent releases Direct user input This work is licensed under a Creative Commons Attribution 3.0 Unported License.
  • 14. The draw of Open Source Having a real impact in the development and direction of IT Personal satisfaction: I wrote that! Sense of membership in a community Sense of accomplishment - very quick turnaround times Developers and engineers love to tinker - huge opportunity to do so This work is licensed under a Creative Commons Attribution 3.0 Unported License.
  • 15. Open Source FUD No quality or quality control Prevents or slows development Have to “give it away for free” No real innovation This work is licensed under a Creative Commons Attribution 3.0 Unported License.
  • 16. What is Open Source? Open Source Licensing OSI Approved Free Software As in Free Speech, not Free Beer Open Source Methodology (secondary) ala, the Apache Software Foundation This work is licensed under a Creative Commons Attribution 3.0 Unported License.
  • 17. Open Source Licenses Give Me Credit AL, BSD, MIT Give Me Fixes (L)GPL, EPL, MPL Give Me Everything GPL - Dave Johnson http://rollerweblogger.org/page/roller?entry=gimme_credit_gimme_fixes_gimmem This work is licensed under a Creative Commons Attribution 3.0 Unported License.
  • 18. The Apache License (AL) A liberal open source software license - BSD- like Business friendly Requires attribution Includes Patent Grant Easily reused by other projects & organizations This work is licensed under a Creative Commons Attribution 3.0 Unported License.
  • 19. License Differences Mainly involve the licensing of derivative works Only really applies during (re)distribution of work Where the “freedom” should be mostly focused: the user or the code itself Be careful when mixing licenses! This work is licensed under a Creative Commons Attribution 3.0 Unported License.
  • 20. One True License There is no such thing Licensing is selected to address what you are trying to do In general, Open Standards do better with AL-like license If wide adoption is important to you: again AL. This work is licensed under a Creative Commons Attribution 3.0 Unported License.
  • 21. The Apache Way Although the term is deprecated, “The Apache Way” relates to how the ASF (and its projects) work and operate Basically, the least common denominators on how PMCs operate This work is licensed under a Creative Commons Attribution 3.0 Unported License.
  • 22. Why focus on ASF ? http://www.zdnet.com/blog/open-source/oracle-gives- openoffice-to-apache/9035 http://webmink.com/essays/#OBR This work is licensed under a Creative Commons Attribution 3.0 Unported License.
  • 23. Basic Memes Meritocracy Peer-based Consensus decision making Collaborative development Responsible oversight Individual Participation This work is licensed under a Creative Commons Attribution 3.0 Unported License.
  • 24. Meritocracy “Govern by Merit” Merit is based on what you do Merit never expires Those with merit, get more responsibility Provides incentive to Do More This work is licensed under a Creative Commons Attribution 3.0 Unported License.
  • 25. Peer-based Developers represent themselves - individuals Mutual trust and respect All votes hold the same weight (no BDFL) Community created code Healthy communities create healthy code Poisonous communities don’t Feel as part of a community This work is licensed under a Creative Commons Attribution 3.0 Unported License.
  • 26. Why Community -> Code Since we are all volunteers, people’s time and interests change A healthy community is “warm and inviting” and encourages a continued influx of developers Poisonous people/communities turn people off, and the project will die End result - better code, long-term code This work is licensed under a Creative Commons Attribution 3.0 Unported License.
  • 27. Consensus decision making Key is the idea of voting +1 - yes +0 - no real comment -1 - veto Sometimes you’ll also see stuff like -0, -0.5, etc... This work is licensed under a Creative Commons Attribution 3.0 Unported License.
  • 28. Voting The main intent is to gauge developer acceptance Vetos must be justifiable and have sound technical merit If valid, Vetos cannot be overruled Vetos are very rare This work is licensed under a Creative Commons Attribution 3.0 Unported License.
  • 29. Commit Process Review Then Commit (RTC) A patch is submitted to the project for inclusion If at least 3 +1s and no -1s, code is committed Good for stable branches Ensures enough “eyes on the code” on a direct-to-release path This work is licensed under a Creative Commons Attribution 3.0 Unported License.
  • 30. Commit Process Commit Then Review (CTR) A patch is committed directly to the code Review Process happens post commit Good for development branches Depends on people doing reviews after the fact Allows very fast development This work is licensed under a Creative Commons Attribution 3.0 Unported License.
  • 31. Commit Process Lazy Consensus variant of RTC “I plan on committing this in 3 days” Provides opportunity for oversight, but with known “deadline” As always, can be vetoed after the fact This work is licensed under a Creative Commons Attribution 3.0 Unported License.
  • 32. Collaborative Development Code is developed by the community Voting ensures at least 3 active developers Development done online and on-list If it didn’t happen on-list, it didn’t happen This work is licensed under a Creative Commons Attribution 3.0 Unported License.
  • 33. Collaborative Development Mailing lists are the preferred method Archived Asynchronous Available to anyone - public list This work is licensed under a Creative Commons Attribution 3.0 Unported License.
  • 34. Collaborative Development Other methods are OK, if not primary Wikis IRC F2F Always bring back to the list This work is licensed under a Creative Commons Attribution 3.0 Unported License.
  • 35. Responsible Oversight Ensure license compliance Track IP Quality code Quality community This work is licensed under a Creative Commons Attribution 3.0 Unported License.
  • 36. Look Familiar? These concepts are not new or unique Best practices regarding how the Scientific and Health community works This work is licensed under a Creative Commons Attribution 3.0 Unported License.
  • 37. Publish or Perish In Open Source, frequent releases indicate healthy activity What is collaborative s/w development other than peer review? Think how restrictive research would be w/o open communication This work is licensed under a Creative Commons Attribution 3.0 Unported License.
  • 38. The Apache Incubator Entry point for all new projects and codebases Indoctrinates the Apache Way to the podling Ensures and tracks IP This work is licensed under a Creative Commons Attribution 3.0 Unported License.
  • 39. Contributor License Agreement aka: iCLA (for individual) Required of all committers Guarantees: The person has the authority to commit the code That the ASF can relicense the code Does NOT assign copyright This work is licensed under a Creative Commons Attribution 3.0 Unported License.
  • 40. Development The ASF never pays for development of projects Some contributors are corporate sponsored, some aren’t but as far as the ASF is concerned it makes no difference! Diversity == Independence git-like mega merges are counter-productive Code is one form of contributing, not the only form. This work is licensed under a Creative Commons Attribution 3.0 Unported License.
  • 41. Other Foundations Foundations (independent) are critical for widespread adoption of s/w ASF: totally vendor neutral - Sponsors don’t control/manage/direct the foundation nor projects “There are other ways of doing things, what we’ve been doing has simply be proven to be one of the best.” This work is licensed under a Creative Commons Attribution 3.0 Unported License.
  • 42. Helpful links The Apache Software Foundation www.apache.org community.apache.org Red Hat, Inc (my employer) www.redhat.com CloudStack podling incubator.apache.org/cloudstack/ This work is licensed under a Creative Commons Attribution 3.0 Unported License.
  • 43. That’s It Thank you! Any questions? @jimjag | www.slideshare.net/jimjag jim@jaguNET.com This work is licensed under a Creative Commons Attribution 3.0 Unported License.

Notas do Editor

  1. \n
  2. \n
  3. \n
  4. \n
  5. \n
  6. \n
  7. \n
  8. \n
  9. \n
  10. \n
  11. \n
  12. \n
  13. \n
  14. \n
  15. \n
  16. \n
  17. \n
  18. \n
  19. \n
  20. \n
  21. \n
  22. \n
  23. \n
  24. \n
  25. \n
  26. \n
  27. \n
  28. \n
  29. \n
  30. \n
  31. \n
  32. \n
  33. \n
  34. \n
  35. \n
  36. \n
  37. \n
  38. \n
  39. \n
  40. \n
  41. \n
  42. \n
  43. \n