[this post is available online at https://s.apache.org/iflt2 ]

by Dmitriy Pavlov

All newbies in Open Source communities may sometimes think that they’ll never 
be able to become Committers. Many treat this role as a prestigious one, 
granted only for special feats, and after having written a ton of code. But not 
all things are so simple, and I hope my story will help you. 

Election as Apache Committer

My journey with The Apache Software Foundation began relatively recently, in 
2015. I was working for Openway Group, and was enthusiastic about in-memory 
computing. I got to know about Apache Ignite at a local developers conference. 
I implemented the POC of a backend system based on Apache Ignite. I was so 
impressed with the clear API and documentation, and it was also very convenient 
that I could start prototyping without passing through the approval process. I 
suggested using the Apache product instead of a source-available solution. I 
met Konstantin Boudnik (cos), who helped me to understand the difference 
between Apache projects and source-available/closely-governed products.

Luckily for me, GridGain, the company that initially donated Ignite to the 
Apache Incubator, has a development center in my city (Saint Petersburg, 
Russia). I joined the GridGain team in 2017.

As part of my day job, I provide patches to the product. I actively joined the 
dev.list discussions (some fellows sometimes say “too actively”). I’ve created 
a number of wiki pages - ‘Apache Ignite-Under the hood’ to help developers 
understand product internals. Also, I developed ‘Direct IO’ plugin. I was 
elected as a Committer.

In 2018 I was concerned about reviews of patches from members of the community 
not affiliated with GridGain. Since I had a commit-bit now, I’ve started to 
review patches and ask others to review them, too. I don’t know for sure, but I 
suppose - these social achievements in the community development were a basis 
for me being elected as Project Management Committee (PMC) member. 

I asked several questions about The Apache Way on the Community Development 
(“ComDev”) dev list. I was very impressed by how friendly and welcoming they 
are. I very much like such a positive atmosphere, and feel it influences the 
success of Apache projects. Now I’ve also joined Apache Training (incubating) 
community as Committer and PPMC (Podling Project Management Committee) member.

Quite funny for a software developer with 17 years of experience… being elected 
as a Committer, that is to say, because of the social aspects and 
documentation. 

Who is a typical Committer and where does his or her strength lie?
When creating an Open Source product, we always let the users explore it in 
action -- as well as allow them to modify it and distribute modified copies. 
But when such modified copies are replicated in an unsupervised manner, we 
don’t get contributions into the main codebase and the project stalls. It’s 
here where we need exactly such a person – the Committer – someone who is 
authorized to merge user contributions into the project.

Why should you become a Committer?
First of all, being assigned to a Committer role is extremely motivating. The 
professional community acknowledges you and your work, and you clearly see the 
results of your work in action.

How different is that from some enterprise project -- where you have no idea 
why you must continually keep shuffling various XML fields?

The second pure advantage of being a Committer is an opportunity to connect 
with top professionals and also pull some cool ideas from Open Source into your 
own project. But, if you aren’t one of the top professionals, certainly don’t 
be afraid to join -- the community has various tasks for different folks.

Besides, being a Committer is a jewel in your CV --and even a greater plus for 
junior programmers, because at interviews you are often asked to show code 
samples. If you know an Open Source project well, a company supporting or using 
it will be happy to hire you. There are some people who will tell you that 
great positions are unreachable without first committing in Open Source.

There are some bonus goodies, too! For example, Apache Committers get an 
IntelliJ Idea Ultimate license for free (albeit with some limitations).

How do you become a Committer?
You should be committed to the project --it’s just that simple. Development, 
writing tests and documentation, and simply answering questions on lists are 
also good ways to start working towards committership.

Yeah, the contributions of QA engineers and technical writers in the community 
are valued no less than the developers’ contributions.

If you think there are no tasks for you on some project, you are wrong. Just 
join the community you are interested in and start working on its tasks. 

The Apache Software Foundation has this dedicated page that lists what 
contributions are needed.  

Committer — to be or not to be?
Committer activity is a good and useful endeavor, but one shouldn’t strive to 
become a committer per se. This status can be granted not only for code and it 
doesn’t justify your proficiency. 

Find a project you may be interested in: it will probably be a project whose 
software you already use. Dive into its code and say hi to the community; offer 
help, improve docs, complete a newbie ticket or answer to a user. You may just 
be surprised how welcoming and open folks are there.

Strive to gain the expertise (knowledge and experience) while researching the 
project, tweaking it and helping others to solve their problems, and, 
hopefully, enjoying collaborative development in an Open Source project.

Getting started at http://community.apache.org/ will help you on your way.


Dmitriy Pavlov is a Java developer enthusiastic about Open Source and in-memory 
computing. He is interested in system performance, information security, and 
cryptography. He created and donated utility for monitoring tests for Apache 
Ignite, and is a former Community Manager for Apache Ignite at GridGain. 
Dmitriy represents the Apache Ignite Project Management Committee (PMC) at 
local meetups in Russia. He runs workshops and training for Apache Ignite 
developers and users, and is a frequent speaker at meetups and conferences.

= = =

"Success at Apache" is a monthly blog series that focuses on the processes 
behind why the ASF "just works" 
https://blogs.apache.org/foundation/category/SuccessAtApache

Reply via email to