Skip to content

Conversation

@damondouglas
Copy link
Contributor

@damondouglas damondouglas commented Apr 8, 2020

This pull request closes BEAM-9678 by adding an Introduction Beam Kata for learning the Go SDK. It patterns after the existing Java and Python Beam Katas.

I would like to request @lostluck to review this PR.

Currently, this PR submits:

Introduction

  • Hello Beam
  • Hello Beam Test

Thank you for your contribution! Follow this checklist to help us incorporate your contribution quickly and easily:

  • Choose reviewer(s) and mention them in a comment (R: @username).
  • Format the pull request title like [BEAM-XXX] Fixes bug in ApproximateQuantiles, where you replace BEAM-XXX with the appropriate JIRA issue, if applicable. This will automatically link the pull request to the issue.
  • If this contribution is large, please file an Apache Individual Contributor License Agreement.

See the Contributor Guide for more tips on how to make review process smoother.

Post-Commit Tests Status (on master branch)

Lang SDK Apex Dataflow Flink Gearpump Samza Spark
Go Build Status --- --- Build Status --- --- Build Status
Java Build Status Build Status Build Status
Build Status
Build Status
Build Status
Build Status
Build Status Build Status Build Status
Build Status
Build Status
Python Build Status
Build Status
Build Status
Build Status
--- Build Status
Build Status
Build Status
Build Status
Build Status
--- --- Build Status
XLang --- --- --- Build Status --- --- Build Status

Pre-Commit Tests Status (on master branch)

--- Java Python Go Website
Non-portable Build Status Build Status
Build Status
Build Status Build Status
Portable --- Build Status --- ---

See .test-infra/jenkins/README for trigger phrase, status and link of all Jenkins jobs.

@lostluck lostluck self-requested a review April 8, 2020 18:17
@henryken
Copy link
Contributor

henryken commented Apr 9, 2020

I can help to review this as well.

Copy link
Contributor

@lostluck lostluck left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The Go code LGTM, bit I'm less familiar with the kata structuring. It feels like we're off by one layer. Someone familiar with the katas more generally can confirm if that matters or not. Consistency by the java or python structures is valuable for others updating things accross the board.

@lostluck
Copy link
Contributor

lostluck commented Apr 9, 2020

@henryken That would be valuable! I'm familiar with Go, and Beam, but not katas. Please chime in!

@damondouglas
Copy link
Contributor Author

@lostluck @henryken I've made the recommended changes. Thank you for reviewing.

Copy link
Contributor

@henryken henryken left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Happy to discuss further about the proposed changes.

@damondouglas
Copy link
Contributor Author

Thank you @henryken. I've changed the PR based on your helpful feedback.

Copy link
Contributor

@henryken henryken left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for making the changes @damondouglas. I have few more comments.
Let me know if you have other thoughts.

Copy link
Contributor

@henryken henryken left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

All should be good now. Just one comment below that comes from GoLand suggestion.

@henryken
Copy link
Contributor

If everything is okay, I can help to upload this course to Stepik.

@damondouglas
Copy link
Contributor Author

@henryken I think everything is ok and if you could help uploading this to Stepik that would be really helpful. I'll email you about hopefully meeting with you to plan out the rest of the katas.

@henryken
Copy link
Contributor

Awesome! @lostluck, please help to merge this PR. Thanks.

@lostluck
Copy link
Contributor

Thank you very much! I look forward to the next lessons.

This can wait for a next PR, but having a small README on how to keep the go side of the katas up to date (eg commands to run, like go mod tidy or pointers to instructions for how to upload them to stepik) would be valuable for ongoing maintenance and improvement as the SDK has more features added (like Trigger support).

I know that when the SDK becomes module compatible and no-longer experimental, we'll definitely need to update these files :) .

@lostluck lostluck merged commit 19fe4b5 into apache:master Apr 16, 2020
@boyuanzz
Copy link
Contributor

There are 2 go.sum files without apache license header, which breaks RAT check. Could you please take a look at it?

@damondouglas
Copy link
Contributor Author

Thank you for letting me know. 😨 @lostluck Should we put the license information in the go.sum files? And yes that README on how to keep the go katas up to date will be helpful. I created BEAM-9782 subtask so its not forgotten.

@damondouglas
Copy link
Contributor Author

damondouglas commented Apr 19, 2020

There is also no license information in any of the *-remote-info.yaml files either but that didn't break the RAT check? Should we add them there too?

@lostluck
Copy link
Contributor

lostluck commented Apr 19, 2020 via email

@lostluck
Copy link
Contributor

lostluck commented Apr 19, 2020 via email

@lostluck
Copy link
Contributor

lostluck commented Apr 19, 2020 via email

@henryken
Copy link
Contributor

Yeah the *-remote-info.yaml files are auto generated and they are overwritten after the course has been uploaded.

@henryken
Copy link
Contributor

I'd suggest we do the same for the go.sum files.

@lostluck
Copy link
Contributor

lostluck commented Apr 19, 2020 via email

@damondouglas damondouglas deleted the BEAM-9678-intro-kata-go branch May 13, 2020 03:07
yirutang pushed a commit to yirutang/beam that referenced this pull request Jul 23, 2020
Adds a simple introduction lesson for the Go SDK, to help users get their first pipeline up and running.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants