Imagine that you are a Pulsar user or interested in data streaming in general
and would like to contribute to some related open-source project.
You have some prior programming experience but you've worked on other kinds of
projects and never developed distributed streaming systems.
The current documentation doesn't describe the prior knowledge list recommended
to contribute to Pulsar.
Having a clear roadmap of what to learn and where to start would bring more
contributors to the project.
It may have a similar format:
• Java
Recommended resources:
...
• Concurrency and Parallelism
Recommended resources:
...
• Networking
Recommended resources:
...
• Data streaming
Recommended resources:
...
• Cyber-security
Recommended resources:
...
• Storage and Bookkeeper
Recommended resources:
...
• Pulsar internals
Recommended resources:
...
• Important libraries to know
• Netty
• Jetty
• Lombok
...
• Issue list for starting contributing
...
Of course, it takes time to learn these things and can add some additional load
on the PR reviewers' shoulders at first. But it also could help to grow a new
wave of contributors who are loyal to the project from the beginning, which is
important for growing the Pulsar contributors community.
Discussion on GitHub: https://github.com/apache/pulsar/discussions/22176
Best,
Kiryl