[this announcement is available online at https://s.apache.org/x9Be ]

by John Ament

As the next line in the series of "Success at Apache", I had to think
about what kind of blog post I wanted to write.  Given my personal
focus, it made sense to focus on new projects coming in and the
incubator.  When I'm not busy dreaming up new ideas and working on
personal projects, I'm helping new projects get in to Apache, keeping
their goals in alignment with the Apache Way
http://apache.org/foundation/governance/ . I'm a member of a few
different PMCs here at Apache, notably the Incubator. I'm a mentor to
five different podlings right now. While my primary programming focus is
on programming models, my podlings are all over the place. Starting a
new project here at Apache can be a daunting task: how do I get in? What
if I don't build a diverse community?  Becoming a podling has more to do
with the community than it does the technical aspects of the project. We
don't expect you to be experts in it, but we do expect new projects to
be experts in how their own software works. We want to teach you, and we
want you to be receptive to learning about The Apache Software
Foundation and its best practices.

I'm not sure if everyone does it, but I build a lot of parallels between
how an ASF project works and how an Agile team works. Agile teams start
off as a bunch of people who don't really know each other but have
assembled themselves into an informal team focused on solving a problem,
or some number of problems, knowing that they can only do it together.
They have common goals and objectives, but lack camaraderie early on to
be able to work together smoothly. Over time, they get to know one
another, figure out strengths and weaknesses and can resolve issues
together. A well-functioning team isn't one at the beginning. It takes
time and practice for them to work well - both together and as an
outwardly facing unit.

Projects here at Apache follow the same type of maturity progression.
Whether it's learning The Apache Way or learning to work with one
another, it takes them time to mature and get into a good groove. 
Open Communication
The ASF is pretty big on open communication, wherever it's a sensible
solution. We want to discuss with each other what we're doing, ideas
around how to solve it and come up with a good solution together, as a
team, in an open manner.  

This all ties into agile practices. We host stand ups to talk about what
we're doing and see if others have an opinion about what we're doing.

When a project comes to Apache, the original authors need to remember
that they're bringing in a lot of experience, and the expectation is
that those existing contributors must help get new contributors from the
outside - outside their organization specifically - to contribute into
the project. By driving towards open communication, outside of your own
organization, you're encouraging more people to participate. This sort
of governance model ensures that all parties who can participate are
aware of decisions being made.

Open Communication isn't for everything though. We need to remember to
be respectful in our communications with others and if it's felt that
something’s awry - speak privately. But remember that isn't part of the
decision making process. Likewise, anytime we're talking about
individuals in either a positive or negative way that should be
conducted on the private list for a project.
Turning Into a Well Oiled Machine
Once a project begins to grow, new people start to get attracted to it.
As a community, you have to figure out how to work together. Building a
community of diverse ideas and skills will ensure that new ideas keep
flowing. Contributors can react quickly to a user's question on list and
help them resolve the problem, put in an enhancement request or get a
bug report squashed in a following commit. Time is of the essence right
now because I have availability to work on this.

There can't be a long drawn out waterfall style process when dealing
with Open Source. At the same time, making sure there's a documented
decision process and in sometimes an in depth design is critical for
both new contributors and existing alike to come to a shared
understanding of what is being proposed.

Sustaining
Projects need to plan for longevity. Longevity comes in many forms. A
strong backlog of features is important. Having a diverse set of
committers is even more critical. You could even say that each helps
create the other. Just like any feature set, we get to a point where the
feature is complete enough that we can move on to another feature.  
How do you get there?
Apache's main way to go to these points is to incubate
http://incubator.apache.org/ . You can't get to this point by
yourselves, experiencing with first-hand from existing Foundation
members will help get your community to turn a new leaf and adopt this
way of working. We want you to be successful, as long as your project
can dedicate itself to the practices that have been set forth within the
Foundation.

New projects may be comfortable with a champion
http://incubator.apache.org/incubation/Roles_and_Responsibilities.html#Champion
that can work with them closely, answering their questions up front.
While a lot of the pre-incubation chatter will happen off list, it is
important that potential new podlings subscribe to the incubator general
list
http://incubator.apache.org/guides/lists.html#general+at+incubator.apache.org
and understand both the goings on of a podling as well as try to build
their list of mentors
http://incubator.apache.org/incubation/Roles_and_Responsibilities.html#Mentor
in the open. Mentors are extremely important to a podling, and
understanding their roles and why you need to pick great mentors is
something your champion and the rest of the Incubator community can help
explain. Participating in our public discussion lists is sometimes the
first step to joining the foundation at a deeper level.

Where do we go next?
If you're a potential new project, feel free to reach out on the
Incubator mailing lists
http://incubator.apache.org/guides/lists.html#general+at+incubator.apache.org
to get started. We'd love to hear from you and get you acquainted with
The Apache Software Foundation.

If you're on an existing project, we want to hear your perspectives on
how the Foundation works. You may want to reach out to dev@community
http://community.apache.org/lists.html to let others know your thoughts,
or even just subscribe and see what others have to say. We're all
working together to make the foundation better. The more input we
receive, both the positive and the negative, will help shape everyone's
actions in the community.

= = =

"Success at Apache" is a new monthly blog series that focuses on the
processes behind why the ASF "just works". 1) Project Independence
https://s.apache.org/CE0V 2) All Carrot and No Stick
https://s.apache.org/ykoG 3) Asynchronous Decision Making
https://s.apache.org/PMvk 4) Rule of the Makers
https://s.apache.org/yFgQ 5) JFDI --the unconditional love of
contributors https://s.apache.org/4pjM 6) Meritocracy and Me
https://s.apache.org/tQQh

# # #

NOTE: you are receiving this message because you are subscribed to the
announce@apache.org distribution list. To unsubscribe, send email from
the recipient account to announce-unsubscr...@apache.org with the word
"Unsubscribe" in the subject line. 

Reply via email to