apache software foundation: how to contribute, with apache flink as example (2016/10/6 flink.tw 3rd...
TRANSCRIPT
Apache Software Foundation:
How to Contribute
Tzu-Li (Gordon) Tai
@tzulitai Oct 2016 @ Flink.tw Meetup
with Apache Flink as example ;)
● 戴資力(Gordon)● Apache Flink Committer● Co-organizer of Apache Flink Taiwan User Group● Software Engineer @ VMFive● Java, Scala● Enjoy developing distributed computing systems
XX Who am I?
0
● Approaching Apache projects as a new contributor
● The contribution process, with Apache Flink as an example
● Becoming an Apache Committer
XX This talk will be about ...
1
Look for tasks onThe project JIRA
board
Attend mail threaddiscussions
3
Every Apache project has it’s own JIRA board
Every Apache project has 2 mailing lists:
1) User mailing list: [email protected]) Dev mailing list: [email protected]
Yo! I have this really nice feature I implemented for the
project.
Please review it and merge it! It’s really useful !!
The Committer
hmmm ….I don’t see any prior discussion on this feature.It’s a pretty big chunk of code, is there a design doc to refer to?
The New Contributor
The Committer The New Contributor
hmmm ….I don’t see any prior discussion on this feature.It’s a pretty big chunk of code, is there a design doc to refer to?
No!
But it’s really useful. We’ve been running it in production for a while already!
The Committer
Hey, lets slow things down a bit.
We should fall back to the mailing threads and discuss with others on how to proceed ...
The New Contributor
The Committer The New Contributor
Hey, lets slow things down a bit.
We should fall back to the mailing threads and discuss with others on how to proceed ...
Look for tasks onThe project JIRA
board
Attend mail threaddiscussions
ReachCommunityConsensus
The Apache Way:Community over Code
8
Ways to reach consensus:
● Start a discussion thread● Ping a Committer
Look for tasks onThe project JIRA
board
Attend mail threaddiscussions
ReachCommunityConsensus
Code & Submit Patch
reviews & refines
8
Look for tasks onThe project JIRA
board
Attend mail threaddiscussions
ReachCommunityConsensus
Code & Submit Patch
reviews & refines
Committer merges patch
8
Apache Flinkan open-source platform for distributedstream and batch data processing
● Apache Top-Level Project since Jan. 2015
● Streaming Dataflow Engine at its core
○ Low latency○ High Throughput○ Stateful○ Distributed
10
● ~230 contributors, 23 Committers / PMCs
● Used adoption:
○ Alibaba - realtime search ranking optimization○ Uber - ride request fufillment marketplace○ Netflix - Stream Processing as a Service (SPaaS)○ Kings Gaming - realtime data science dashboard○ ...
Apache Flinkan open-source platform for distributedstream and batch data processing
10
Gaining trust among the current project PMCs and Committers:
It’s all about Trust!
● Show constant quality on your submissions
● Show responsibility in maintaining your code
● Become an expert in at least one of the major components
● Provide detailed reviews for other contributors’ submissions
● Answer user questions / attend discussions on the mailing list
● Help out testing of releases
13
Gaining trust among the current project PMCs and Committers:
It’s all about Trust!
● Show constant quality on your submissions
● Show responsibility in maintaining your code
● Become an expert in at least one of the major components
● Provide detailed reviews for other contributors’ submissions
● Answer user questions / attend discussions on the mailing list
● Help out testing of releases
13
Gaining trust among the current project PMCs and Committers:
It’s all about Trust!
● Show constant quality on your submissions
● Show responsibility in maintaining your code
● Become an expert in at least one of the major components
● Provide detailed reviews for other contributors’ submissions
● Answer user questions / attend discussions on the mailing list
● Help out testing of releases
13
Gaining trust among the current project PMCs and Committers:
It’s all about Trust!
● Show constant quality on your submissions
● Show responsibility in maintaining your code
● Become an expert in at least one of the major components
● Provide detailed reviews for other contributors’ submissions
● Answer user questions / attend discussions on the mailing list
● Help out testing of releases
13
Gaining trust among the current project PMCs and Committers:
It’s all about Trust!
● Show constant quality on your submissions
● Show responsibility in maintaining your code
● Become an expert in at least one of the major components
● Provide detailed reviews for other contributors’ submissions
● Answer user questions / attend discussions on the mailing list
● Help out testing of releases
13