Hi all!

I want to propose that we try and adopt a code style and quality guide. Its
a big endeavor, but I think it's worth trying :-)

The Apache Flink community and contributor base is growing quite a bit, new
committers and contributors are coming on board frequently. Everyone comes
from a different background and brings a different level of experience.
Different contributors apply different styles, and contributions are
naturally of varying code quality.

We are struggling with finding a good balance between:

  (1) On the one hand maintaining a certain code standard for a big and
complex system like Flink, to reduce bugs and make future contributions
feasible (and not impossible due to code complexity).

  (2) On the other hand, make contributions possible for contributors. This
means not guarding everything to the point that no contributions can get in
any more.

My suggestion to help with this is to define a standard and document it
explicitly. It will help to get everyone on the same page what the
expectation is, and it helps contributors know what to pay attention to.
Such a guide should also help make review more efficient, because
contributors can know up front what reviewers will look at.

Over the past weeks, I took a look at the current Flink code base and
talked to some committers and contributors and tried to come up with a
proposal that reflects the approaches and standards that many committers
have adopted lately.

https://docs.google.com/document/d/1owKfK1DwXA-w6qnx3R7t2D_o0BsFkkukGlRhvl3XXjQ


This guide is not fix and final, we should discuss it and expand and adjust
it over time. The guide tries to strike a balance between too much contents
(don't force someone to read a book before contributing) and being
comprehensive enough. The guide looks long, but much of it are component or
aspect specific parts, like how to deal with new dependencies,
configuration changes, etc.

I an curious to hear whether you think such a guide is in principle a good
idea.
If yes, is the one here a good starting point?

Best,
Stephan

Reply via email to