Hi,

I'd like to revive a discussion that was taken some year and a half ago [1], which included a concept of "BIP" (Beam Improvement Proposal) - an equivalent of "FLIP" (flink), "KIP" (kafka), "SPIP" (spark), and so on.

The discussion then ended without any (public) conclusion, so I'd like to pick up from there. There were questions related to:

 a) how does the concept of BIP differ from simple plain JIRA?

 b) what does it bring to the community?

I'd like to outline my point of view on both of these aspects (they are related).

BIP differs from JIRA by definition of a process:

   BIP -> vote -> consensus -> JIRA -> implementation

This process (although it might seem a little unnecessary formal) brings the following benefits:

 i) improves community's overall awareness of planned and in-progress features

 ii) makes it possible to prioritize long-term goals (create "roadmap" that was mentioned in the referred thread)

 iii) by casting explicit vote on each improvement proposal diminishes the probability of wasted work - as opposed to our current state, where it is hard to tell when there is a consensus and what actions need to be done in order to reach one if there isn't

 iv) BIPs that eventually pass a vote can be regarded as "to be included in some short term" and so new BIPs can build upon them, without the risk of having to be redefined if their dependency for whatever reason don't make it to the implementation

Although this "process" might look rigid and corporate, it actually brings better transparency and overall community health. This is especially important as the community grows and becomes more and more distributed. There are many, many open questions in this proposal that need to be clarified, my current intent is to grab a grasp about how the community feels about this.

Looking forward to any comments,

 Jan

[1] https://lists.apache.org/thread.html/4e1fffa2fde8e750c6d769bf4335853ad05b360b8bd248ad119cc185%40%3Cdev.beam.apache.org%3E

Reply via email to