Thanks for writing all this up and for putting up PRs to improve things!

Kenn

On Mon, Jan 31, 2022 at 12:17 PM Danny McCormick <[email protected]>
wrote:

> 👋 Hey folks, my name is Danny - I recently completed my first Beam
> PR[1] (a small extension to the Go Dataflow runner) and am planning on
> becoming a more regular part of the community. As such, I wanted to use my
> fresh newbie eyes and share some of what was nice and where there was
> friction about getting started.
>
> Disclaimer: this is coming from the perspective of someone who is pretty
> used to open source development, but has minimal experience with the Apache
> way, Beam, and the languages my change came in. I'm hoping my experience is
> helpful to those of you who have been around for a while and haven't seen
> things as a newcomer in a long time, but it may not be reflective of the
> experience of others.
>
> *Things that were really nice:*
>
> - The community has been really welcoming and encouraging of
> contributions, something I saw in my first code review, my first pr, and
> even the tone of the docs. Special thanks to @lostluck and @jrmccluskey for
> making my first interactions welcoming and prompt. That experience can be
> the difference between one time and repeat contributors.
>
> - Getting started writing my first pipeline, and then ramping up to more
> complex concepts was surprisingly easy - in particular, the docs, examples,
> and Katas made for a reasonably smooth process. It wasn't always clear how
> to go from that to more complex transforms and there's of course room for
> more clarity, but I appreciate the work that's gone into the getting
> started experience.
>
> - Overall, the code base is pretty easily understood/reasoned about, and
> the high quality of code made it pretty easy to make my first change. I'm
> pretty impressed at how simple/well composed this system is even as it
> approaches a tricky problem space (hopefully I'm saying the same thing
> after I make some bigger changes :))
>
> *Friction Points:*
>
> - It was harder than expected for me to figure out what made Beam
> different/special from other tools in the space out there for users.
> Specifically, it wasn't immediately obvious why I would use Beam instead of
> just running my jobs directly on Spark or Flink or one of the other
> runners. One pretty big challenge here was that I didn't really get how
> easy it was to switch runner types/how powerful the portability (and
> unified streaming/batch) model was. I'm not sure exactly what would make
> this easier for someone new to the space, but some sort of graphic or brief
> statement of "this is where Beam adds value over most other frameworks" in
> the Readme would be cool.
>
> - There were some small paper cut usability things in the repo.
> Specifically, it looks like the labeler is broken (issue[2] and pr[3] added
> to address this) and there isn't a CONTRIBUTING.md (issue[4] and pr[5]
> added to address this), though the contribution guide is linked elsewhere.
> Both of these are probably non-issues for experienced contributors, but add
> a small amount of friction for people who are trying to get involved,
> especially those who navigate a fair amount of OSS repos, and they're
> pretty easy to fix.
>
> - I know there's some separate discussion about this in a different
> thread[6], but the use of Jira instead of GitHub issues added a layer of
> friction to getting started. Concretely, I would've put up my first pull
> request and created my first issue earlier if I didn't need to go through
> the process of creating a Jira account and getting permissions to assign
> tickets, and it was harder to find a good first issue to contribute to. I
> can imagine others might not have pushed through that.
>
> With all that said, I'm really excited to be joining the community and get
> to add to Beam, and I hope it was helpful or interesting to get a newbies
> perspective.
>
> [1] https://github.com/apache/beam/pull/16643
> [2] https://issues.apache.org/jira/browse/BEAM-13779
> [3] https://github.com/apache/beam/pull/16665
> [4] https://issues.apache.org/jira/browse/BEAM-13780
> [5] https://github.com/apache/beam/pull/16666
> [6] https://lists.apache.org/thread/q5nbwxqvfkzlz664c4kchzkbj26c3r89
>
> Thanks,
> Danny
>

Reply via email to