What is the ASF?

ApacheLogo

Who am I?

Your Name
Your role
Your email

What am I going to cover?

asf logo
  • What is the ASF?

  • How is an ASF project structured?

  • How is the ASF structured?

  • How does all of this work?

What is the ASF?

  • ASF = The Apache Software Foundation

  • US 501(c)3 charity (Non-profit charity)

  • Community of volunteers

  • Virtual, world-wide organisation

  • Provides organisational, legal and financial support for a large number of open-source projects

The Apache Group

250
  • Before there was the ASF, there was the "Apache Group"

  • Informal corporate structure

  • 8 members

  • Formed in Feb. 1995

  • Continued the work on the NCSA httpd

  • Chose a very promiscuous license

Growth

Then (1999)

Now (03.2023)

  • 21 Members

  • 2 Projects

  • All servers and services donated

  • 743 Members

  • 362 Projects (Managed by 207 PMCs)

  • 8833 Committers

  • Cloud infrastructure

Number of projects over time

project number over time

Commits over time

commits over time

Language distribution

language distribution

Project categories

project categories

The mission

  • Provide software for the public good

  • Protect the trademark: Apache and her software products against misuse by other organisations

  • Provide the technical and legal infrastructure for open-source development

  • Provide all means to protect every volunteer from persecution as long as this persecution is aimed at a project of the foundation

The vision

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.

Projects

  • Heart of the ASF are the projects

  • Also named "Top Level Project" (TLP)

  • ASF provides services:

    • Mailinglists, code-repositories (SVN, Git, …​)

    • Bug & Issue trackers (Jira, …​), Wiki (Confluence, …​)

    • CI Server (Jenkins, …​), Webservers for project websites

    • …​

Structure of a project

project structure

Lifecycle of a project

project lifecycle

How is the ASF structured?

  • Member based - only individuals can join (no companies)

  • Members nominate and elect new members

  • Members elect board (9 directors)

  • Annual members meeting via IRC

  • Monthly board meeting

  • Every project elects a Chair as interface to the board

Structure of the ASF

asf structure

How does this all work?

  • The Apache Way

    • A method to develop software

    • A method to run communities

    • A method to run an organisation

On which principles is it based?

  • Meritocracy: Advancement through action & commitment

  • Transparency: Nothing happens in secret

  • Community: Together we are strong

Ways to be committed

  • Documentation, Tutorials, Examples

  • Talks (at conferences & meetups)

  • User groups

  • Helping others (On mailing lists)

  • Filing bug reports

  • Testing and helping fix bugs & issues

  • Bugfixes

  • New features

  • Mentoring, involvement in the foundation itself

Path of merit

merit path

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

  • If something isn’t documented on any of the mailing lists, it didn’t happen

    • Every discussion and decision needs to be documented

  • All discussions should happen in the public

  • Off-list discussions can happen, but important information needs to be forwarded to the mailing list

  • Others are need to be able to participate

Community over Code

  • We’re (all) volunteers, life happens and our availability and our interests change

  • A vital community encourages new community members

  • It’s normal, that members (temporarily) leave the community

  • Poisonous people scare others and must be fought

  • Result of a healthy community → better code, long-lasting projects

Consensus-based decisions

  • PMC members have binding votes

  • Non-PMC members have non-binding votes

  • Formally only binding votes count

  • But non-binding votes usually are still respected

  • Something is considered decided if:

    • At least 3 binding votes

    • More +1 as -1 votes

Collaborative development

  • Code should be developed in community with others

    • Large code-drops are bad

  • Development should happen on-line (Git/SVN, Email, …​)

  • Votes ensure that at least 3 developers are still active

  • In order to allow anyone to participate, votes usually last at least 72 hours

  • Discussions and votes happen only on the mailing-list

The result

  • Vendor neutrality

  • Diversity

  • Trust

  • Safety

  • Security

How can companies help?

  • Companies can allow their employees to contribute during working hours

  • Companies can directly support the ASF financially (Sponsoring)

  • Companies can donate code, so everyone can profit from it

  • Companies can’t directly fund development in projects

  • Companies can donate funds towards projects (Targeted donations)