You are viewing a plain text version of this content. The canonical link for it is here.
Posted to github@beam.apache.org by GitBox <gi...@apache.org> on 2020/12/16 10:47:19 UTC

[GitHub] [beam] Jakub-Sadowski opened a new pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Jakub-Sadowski opened a new pull request #13565:
URL: https://github.com/apache/beam/pull/13565


   Implemented:
   
   - contribution guide page
   - become a committer page
   - twitter feed component
   ------------------------
   
   Thank you for your contribution! Follow this checklist to help us incorporate your contribution quickly and easily:
   
    - [ ] [**Choose reviewer(s)**](https://beam.apache.org/contribute/#make-your-change) 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.
    - [ ] Update `CHANGES.md` with noteworthy changes.
    - [ ] If this contribution is large, please file an Apache [Individual Contributor License Agreement](https://www.apache.org/licenses/icla.pdf).
   
   See the [Contributor Guide](https://beam.apache.org/contribute) for more tips on [how to make review process smoother](https://beam.apache.org/contribute/#make-reviewers-job-easier).
   
   Post-Commit Tests Status (on master branch)
   ------------------------------------------------------------------------------------------------
   
   Lang | SDK | Dataflow | Flink | Samza | Spark | Twister2
   --- | --- | --- | --- | --- | --- | ---
   Go | [![Build Status](https://ci-beam.apache.org/job/beam_PostCommit_Go/lastCompletedBuild/badge/icon)](https://ci-beam.apache.org/job/beam_PostCommit_Go/lastCompletedBuild/) | --- | [![Build Status](https://ci-beam.apache.org/job/beam_PostCommit_Go_VR_Flink/lastCompletedBuild/badge/icon)](https://ci-beam.apache.org/job/beam_PostCommit_Go_VR_Flink/lastCompletedBuild/) | --- | [![Build Status](https://ci-beam.apache.org/job/beam_PostCommit_Go_VR_Spark/lastCompletedBuild/badge/icon)](https://ci-beam.apache.org/job/beam_PostCommit_Go_VR_Spark/lastCompletedBuild/) | ---
   Java | [![Build Status](https://ci-beam.apache.org/job/beam_PostCommit_Java/lastCompletedBuild/badge/icon)](https://ci-beam.apache.org/job/beam_PostCommit_Java/lastCompletedBuild/) | [![Build Status](https://ci-beam.apache.org/job/beam_PostCommit_Java_ValidatesRunner_Dataflow/lastCompletedBuild/badge/icon)](https://ci-beam.apache.org/job/beam_PostCommit_Java_ValidatesRunner_Dataflow/lastCompletedBuild/)<br>[![Build Status](https://ci-beam.apache.org/job/beam_PostCommit_Java_VR_Dataflow_V2/lastCompletedBuild/badge/icon)](https://ci-beam.apache.org/job/beam_PostCommit_Java_VR_Dataflow_V2/lastCompletedBuild/)<br>[![Build Status](https://ci-beam.apache.org/job/beam_PostCommit_Java_ValidatesRunner_Dataflow_Java11/lastCompletedBuild/badge/icon)](https://ci-beam.apache.org/job/beam_PostCommit_Java_ValidatesRunner_Dataflow_Java11/lastCompletedBuild/) | [![Build Status](https://ci-beam.apache.org/job/beam_PostCommit_Java_ValidatesRunner_Flink/lastCompletedBuild/badge/icon)](https://ci-beam
 .apache.org/job/beam_PostCommit_Java_ValidatesRunner_Flink/lastCompletedBuild/)<br>[![Build Status](https://ci-beam.apache.org/job/beam_PostCommit_Java_ValidatesRunner_Flink_Java11/lastCompletedBuild/badge/icon)](https://ci-beam.apache.org/job/beam_PostCommit_Java_ValidatesRunner_Flink_Java11/lastCompletedBuild/)<br>[![Build Status](https://ci-beam.apache.org/job/beam_PostCommit_Java_PVR_Flink_Batch/lastCompletedBuild/badge/icon)](https://ci-beam.apache.org/job/beam_PostCommit_Java_PVR_Flink_Batch/lastCompletedBuild/)<br>[![Build Status](https://ci-beam.apache.org/job/beam_PostCommit_Java_PVR_Flink_Streaming/lastCompletedBuild/badge/icon)](https://ci-beam.apache.org/job/beam_PostCommit_Java_PVR_Flink_Streaming/lastCompletedBuild/) | [![Build Status](https://ci-beam.apache.org/job/beam_PostCommit_Java_ValidatesRunner_Samza/lastCompletedBuild/badge/icon)](https://ci-beam.apache.org/job/beam_PostCommit_Java_ValidatesRunner_Samza/lastCompletedBuild/) | [![Build Status](https://ci-beam.a
 pache.org/job/beam_PostCommit_Java_ValidatesRunner_Spark/lastCompletedBuild/badge/icon)](https://ci-beam.apache.org/job/beam_PostCommit_Java_ValidatesRunner_Spark/lastCompletedBuild/)<br>[![Build Status](https://ci-beam.apache.org/job/beam_PostCommit_Java_PVR_Spark_Batch/lastCompletedBuild/badge/icon)](https://ci-beam.apache.org/job/beam_PostCommit_Java_PVR_Spark_Batch/lastCompletedBuild/)<br>[![Build Status](https://ci-beam.apache.org/job/beam_PostCommit_Java_ValidatesRunner_SparkStructuredStreaming/lastCompletedBuild/badge/icon)](https://ci-beam.apache.org/job/beam_PostCommit_Java_ValidatesRunner_SparkStructuredStreaming/lastCompletedBuild/) | [![Build Status](https://ci-beam.apache.org/job/beam_PostCommit_Java_ValidatesRunner_Twister2/lastCompletedBuild/badge/icon)](https://ci-beam.apache.org/job/beam_PostCommit_Java_ValidatesRunner_Twister2/lastCompletedBuild/)
   Python | [![Build Status](https://ci-beam.apache.org/job/beam_PostCommit_Python36/lastCompletedBuild/badge/icon)](https://ci-beam.apache.org/job/beam_PostCommit_Python36/lastCompletedBuild/)<br>[![Build Status](https://ci-beam.apache.org/job/beam_PostCommit_Python37/lastCompletedBuild/badge/icon)](https://ci-beam.apache.org/job/beam_PostCommit_Python37/lastCompletedBuild/)<br>[![Build Status](https://ci-beam.apache.org/job/beam_PostCommit_Python38/lastCompletedBuild/badge/icon)](https://ci-beam.apache.org/job/beam_PostCommit_Python38/lastCompletedBuild/) | [![Build Status](https://ci-beam.apache.org/job/beam_PostCommit_Py_VR_Dataflow/lastCompletedBuild/badge/icon)](https://ci-beam.apache.org/job/beam_PostCommit_Py_VR_Dataflow/lastCompletedBuild/)<br>[![Build Status](https://ci-beam.apache.org/job/beam_PostCommit_Py_VR_Dataflow_V2/lastCompletedBuild/badge/icon)](https://ci-beam.apache.org/job/beam_PostCommit_Py_VR_Dataflow_V2/lastCompletedBuild/)<br>[![Build Status](https://ci-beam
 .apache.org/job/beam_PostCommit_Py_ValCont/lastCompletedBuild/badge/icon)](https://ci-beam.apache.org/job/beam_PostCommit_Py_ValCont/lastCompletedBuild/) | [![Build Status](https://ci-beam.apache.org/job/beam_PreCommit_Python_PVR_Flink_Cron/lastCompletedBuild/badge/icon)](https://ci-beam.apache.org/job/beam_PreCommit_Python_PVR_Flink_Cron/lastCompletedBuild/)<br>[![Build Status](https://ci-beam.apache.org/job/beam_PostCommit_Python_VR_Flink/lastCompletedBuild/badge/icon)](https://ci-beam.apache.org/job/beam_PostCommit_Python_VR_Flink/lastCompletedBuild/) | --- | [![Build Status](https://ci-beam.apache.org/job/beam_PostCommit_Python_VR_Spark/lastCompletedBuild/badge/icon)](https://ci-beam.apache.org/job/beam_PostCommit_Python_VR_Spark/lastCompletedBuild/) | ---
   XLang | [![Build Status](https://ci-beam.apache.org/job/beam_PostCommit_XVR_Direct/lastCompletedBuild/badge/icon)](https://ci-beam.apache.org/job/beam_PostCommit_XVR_Direct/lastCompletedBuild/) | [![Build Status](https://ci-beam.apache.org/job/beam_PostCommit_XVR_Dataflow/lastCompletedBuild/badge/icon)](https://ci-beam.apache.org/job/beam_PostCommit_XVR_Dataflow/lastCompletedBuild/) | [![Build Status](https://ci-beam.apache.org/job/beam_PostCommit_XVR_Flink/lastCompletedBuild/badge/icon)](https://ci-beam.apache.org/job/beam_PostCommit_XVR_Flink/lastCompletedBuild/) | --- | [![Build Status](https://ci-beam.apache.org/job/beam_PostCommit_XVR_Spark/lastCompletedBuild/badge/icon)](https://ci-beam.apache.org/job/beam_PostCommit_XVR_Spark/lastCompletedBuild/) | ---
   
   Pre-Commit Tests Status (on master branch)
   ------------------------------------------------------------------------------------------------
   
   --- |Java | Python | Go | Website | Whitespace | Typescript
   --- | --- | --- | --- | --- | --- | ---
   Non-portable | [![Build Status](https://ci-beam.apache.org/job/beam_PreCommit_Java_Cron/lastCompletedBuild/badge/icon)](https://ci-beam.apache.org/job/beam_PreCommit_Java_Cron/lastCompletedBuild/) | [![Build Status](https://ci-beam.apache.org/job/beam_PreCommit_Python_Cron/lastCompletedBuild/badge/icon)](https://ci-beam.apache.org/job/beam_PreCommit_Python_Cron/lastCompletedBuild/)<br>[![Build Status](https://ci-beam.apache.org/job/beam_PreCommit_PythonLint_Cron/lastCompletedBuild/badge/icon)](https://ci-beam.apache.org/job/beam_PreCommit_PythonLint_Cron/lastCompletedBuild/)<br>[![Build Status](https://ci-beam.apache.org/job/beam_PreCommit_PythonDocker_Cron/badge/icon)](https://ci-beam.apache.org/job/beam_PreCommit_PythonDocker_Cron/lastCompletedBuild/) <br>[![Build Status](https://ci-beam.apache.org/job/beam_PreCommit_PythonDocs_Cron/badge/icon)](https://ci-beam.apache.org/job/beam_PreCommit_PythonDocs_Cron/lastCompletedBuild/) | [![Build Status](https://ci-beam.apache.org/job/be
 am_PreCommit_Go_Cron/lastCompletedBuild/badge/icon)](https://ci-beam.apache.org/job/beam_PreCommit_Go_Cron/lastCompletedBuild/) | [![Build Status](https://ci-beam.apache.org/job/beam_PreCommit_Website_Cron/lastCompletedBuild/badge/icon)](https://ci-beam.apache.org/job/beam_PreCommit_Website_Cron/lastCompletedBuild/) | [![Build Status](https://ci-beam.apache.org/job/beam_PreCommit_Whitespace_Cron/lastCompletedBuild/badge/icon)](https://ci-beam.apache.org/job/beam_PreCommit_Whitespace_Cron/lastCompletedBuild/) | [![Build Status](https://ci-beam.apache.org/job/beam_PreCommit_Typescript_Cron/lastCompletedBuild/badge/icon)](https://ci-beam.apache.org/job/beam_PreCommit_Typescript_Cron/lastCompletedBuild/)
   Portable | --- | [![Build Status](https://ci-beam.apache.org/job/beam_PreCommit_Portable_Python_Cron/lastCompletedBuild/badge/icon)](https://ci-beam.apache.org/job/beam_PreCommit_Portable_Python_Cron/lastCompletedBuild/) | --- | --- | --- | ---
   
   See [.test-infra/jenkins/README](https://github.com/apache/beam/blob/master/.test-infra/jenkins/README.md) for trigger phrase, status and link of all Jenkins jobs.
   
   
   GitHub Actions Tests Status (on master branch)
   ------------------------------------------------------------------------------------------------
   [![Build python source distribution and wheels](https://github.com/apache/beam/workflows/Build%20python%20source%20distribution%20and%20wheels/badge.svg?branch=master&event=schedule)](https://github.com/apache/beam/actions?query=workflow%3A%22Build+python+source+distribution+and+wheels%22+branch%3Amaster+event%3Aschedule)
   [![Python tests](https://github.com/apache/beam/workflows/Python%20tests/badge.svg?branch=master&event=schedule)](https://github.com/apache/beam/actions?query=workflow%3A%22Python+Tests%22+branch%3Amaster+event%3Aschedule)
   [![Java tests](https://github.com/apache/beam/workflows/Java%20Tests/badge.svg?branch=master&event=schedule)](https://github.com/apache/beam/actions?query=workflow%3A%22Java+Tests%22+branch%3Amaster+event%3Aschedule)
   
   See [CI.md](https://github.com/apache/beam/blob/master/CI.md) for more information about GitHub Actions CI.
   


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] Jakub-Sadowski commented on a change in pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
Jakub-Sadowski commented on a change in pull request #13565:
URL: https://github.com/apache/beam/pull/13565#discussion_r550432917



##########
File path: website/www/site/content/en/contribute/_index.md
##########
@@ -21,57 +22,65 @@ See the License for the specific language governing permissions and
 limitations under the License.
 -->
 
-# Apache Beam Contribution Guide
+# Contribution guide
+
+</br>
+
+<div class="arrow-lists-desktop">
+
+## Overview
 
-The Apache Beam community welcomes contributions from anyone!
+</br>
 
-If you have questions, please [reach out to the Beam community](/contribute/get-help).
+There are lots of opportunities to contribute. You can for example:
 
-There are lots of opportunities to contribute:
+<div class="arrow-list">
 
- - ask or answer questions on [user@beam.apache.org](/community/contact-us/) or
-[stackoverflow](https://stackoverflow.com/questions/tagged/apache-beam)
- - review proposed design ideas on [dev@beam.apache.org](/community/contact-us/)
- - improve the documentation
- - file [bug reports](https://issues.apache.org/jira/projects/BEAM/issues)
- - test releases
- - review [changes](https://github.com/apache/beam/pulls)
- - write new examples
- - improve your favorite language SDK (Java, Python, Go, etc)
- - improve specific runners (Apache Flink, Apache Spark, Google
-   Cloud Dataflow, etc)
- - improve or add IO connectors
- - add new transform libraries (statistics, ML, image processing, etc)
- - work on the core programming model (what is a Beam pipeline and how does it
-   run?)
- - improve the developer experience (for example, Windows guides)
- - add answers to the [contribution FAQ](
- https://cwiki.apache.org/confluence/display/BEAM/Contributor+FAQ)
- - organize local meetups of users or contributors to Apache Beam
+- ask or answer questions on [user@beam.apache.org](/community/contact-us/) or
+  [stackoverflow](https://stackoverflow.com/questions/tagged/apache-beam)
+- review proposed design ideas on [dev@beam.apache.org](/community/contact-us/)
+- file [bug reports](https://issues.apache.org/jira/projects/BEAM/issues)
+- review [changes](https://github.com/apache/beam/pulls)
+- work on the core programming model (what is a Beam pipeline and how does it
+  run?)
+- improve the developer experience (for example, Windows guides)
+- organize local meetups of users or contributors to Apache Beam
 
-Most importantly, if you have an idea of how to contribute, then do it!
+</div>
+
+...and many more. Most importantly, if you have an idea of how to contribute, then do it!
+
+</br>
 
 ## Contributing code
 
+</br>
+
 Below is a tutorial for contributing code to Beam, covering our tools and typical process in
 detail.
 
+</br>
+
 ### Prerequisites
 
-To contribute code, you need
+<div class="arrow-list">
+
+- a GitHub account
+- a Linux, macOS, or Microsoft Windows development environment with Java JDK 8 installed
+- [Docker](https://www.docker.com/) installed for some tasks including building worker containers and testing this website
+  changes locally
+- [Go](https://golang.org) 1.12 or later installed for Go SDK development
+- Python 3.6, 3.7, and 3.8. Yes, you need all four versions installed.
+
+  pip, setuptools, virtualenv, and tox installed for Python development
+
+- for large contributions, a signed [Individual Contributor License
+  Agreement](https://www.apache.org/licenses/icla.pdf) (ICLA) to the Apache
+  Software Foundation (ASF).
 
- - a GitHub account
- - a Linux, macOS, or Microsoft Windows development environment with Java JDK 8 installed
- - [Docker](https://www.docker.com/) installed for some tasks including building worker containers and testing this website
-   changes locally
- - [Go](https://golang.org) 1.12 or later installed for Go SDK development
- - Python 3.6, 3.7, and 3.8. Yes, you need all three versions installed.
-    - pip, setuptools, virtualenv, and tox installed for Python development
- - for large contributions, a signed [Individual Contributor License
-   Agreement](https://www.apache.org/licenses/icla.pdf) (ICLA) to the Apache
-   Software Foundation (ASF).
+</div>

Review comment:
       I made custom layout for this page and minimalized number of code in div's




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] Jakub-Sadowski commented on a change in pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
Jakub-Sadowski commented on a change in pull request #13565:
URL: https://github.com/apache/beam/pull/13565#discussion_r545732808



##########
File path: website/www/site/content/en/contribute/_index.md
##########
@@ -21,57 +22,65 @@ See the License for the specific language governing permissions and
 limitations under the License.
 -->
 
-# Apache Beam Contribution Guide
+# Contribution guide
+
+</br>
+
+<div class="arrow-lists-desktop">
+
+## Overview
 
-The Apache Beam community welcomes contributions from anyone!
+</br>
 
-If you have questions, please [reach out to the Beam community](/contribute/get-help).
+There are lots of opportunities to contribute. You can for example:
 
-There are lots of opportunities to contribute:
+<div class="arrow-list">
 
- - ask or answer questions on [user@beam.apache.org](/community/contact-us/) or
-[stackoverflow](https://stackoverflow.com/questions/tagged/apache-beam)
- - review proposed design ideas on [dev@beam.apache.org](/community/contact-us/)
- - improve the documentation
- - file [bug reports](https://issues.apache.org/jira/projects/BEAM/issues)
- - test releases
- - review [changes](https://github.com/apache/beam/pulls)
- - write new examples
- - improve your favorite language SDK (Java, Python, Go, etc)
- - improve specific runners (Apache Flink, Apache Spark, Google
-   Cloud Dataflow, etc)
- - improve or add IO connectors
- - add new transform libraries (statistics, ML, image processing, etc)
- - work on the core programming model (what is a Beam pipeline and how does it
-   run?)
- - improve the developer experience (for example, Windows guides)
- - add answers to the [contribution FAQ](
- https://cwiki.apache.org/confluence/display/BEAM/Contributor+FAQ)
- - organize local meetups of users or contributors to Apache Beam
+- ask or answer questions on [user@beam.apache.org](/community/contact-us/) or
+  [stackoverflow](https://stackoverflow.com/questions/tagged/apache-beam)
+- review proposed design ideas on [dev@beam.apache.org](/community/contact-us/)
+- file [bug reports](https://issues.apache.org/jira/projects/BEAM/issues)
+- review [changes](https://github.com/apache/beam/pulls)
+- work on the core programming model (what is a Beam pipeline and how does it
+  run?)
+- improve the developer experience (for example, Windows guides)
+- organize local meetups of users or contributors to Apache Beam
 
-Most importantly, if you have an idea of how to contribute, then do it!
+</div>
+
+...and many more. Most importantly, if you have an idea of how to contribute, then do it!
+
+</br>
 
 ## Contributing code
 
+</br>
+
 Below is a tutorial for contributing code to Beam, covering our tools and typical process in
 detail.
 
+</br>
+
 ### Prerequisites
 
-To contribute code, you need
+<div class="arrow-list">
+
+- a GitHub account
+- a Linux, macOS, or Microsoft Windows development environment with Java JDK 8 installed
+- [Docker](https://www.docker.com/) installed for some tasks including building worker containers and testing this website
+  changes locally
+- [Go](https://golang.org) 1.12 or later installed for Go SDK development
+- Python 3.6, 3.7, and 3.8. Yes, you need all four versions installed.
+
+  pip, setuptools, virtualenv, and tox installed for Python development
+
+- for large contributions, a signed [Individual Contributor License
+  Agreement](https://www.apache.org/licenses/icla.pdf) (ICLA) to the Apache
+  Software Foundation (ASF).
 
- - a GitHub account
- - a Linux, macOS, or Microsoft Windows development environment with Java JDK 8 installed
- - [Docker](https://www.docker.com/) installed for some tasks including building worker containers and testing this website
-   changes locally
- - [Go](https://golang.org) 1.12 or later installed for Go SDK development
- - Python 3.6, 3.7, and 3.8. Yes, you need all three versions installed.
-    - pip, setuptools, virtualenv, and tox installed for Python development
- - for large contributions, a signed [Individual Contributor License
-   Agreement](https://www.apache.org/licenses/icla.pdf) (ICLA) to the Apache
-   Software Foundation (ASF).
+</div>

Review comment:
       I completely agree with that, but other choices are: 
   1. to change all lists globally to arrow ones, but it could be troublesome, because in app we have lists which we don't want to look like this.
   2. set arrow lists and spacings after each paragraph with one wrapper that way we will have less ` <div>`s, but more complex classes for each html tag
   3. take all lists to shortcodes and content to yamls in data folder, the markdown file would be cleaner, but maintenance of the code would be harsher, because to change one page we would need to change a couple of files
   
   About number of `<br>`s, I can drop it down, adding some spacings to the "arrow-list" class.
   If we are talking about the content of pages, some are just shorter versions, but some of them are like complete different pages like for example "Become a Beam Committer" page, it has totally different approach, it would be impossible to commit firstly only content to master branch and then add styles with merge of the `website-revamp `




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] Jakub-Sadowski commented on a change in pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
Jakub-Sadowski commented on a change in pull request #13565:
URL: https://github.com/apache/beam/pull/13565#discussion_r568476142



##########
File path: website/www/site/content/en/blog/adding-data-sources-to-sql.md
##########
@@ -81,19 +81,19 @@ The `TableProvider` classes are under
 
 Our table provider looks like this:
 
-{{< highlight java >}}
+{{< highlight language="java" >}}
 @AutoService(TableProvider.class)
 public class GenerateSequenceTableProvider extends InMemoryMetaTableProvider {
 
-  @Override
-  public String getTableType() {
-    return "sequence";
-  }
+@Override
+public String getTableType() {
+return "sequence";
+}
 
-  @Override
-  public BeamSqlTable buildBeamSqlTable(Table table) {
-    return new GenerateSequenceTable(table);
-  }
+@Override
+public BeamSqlTable buildBeamSqlTable(Table table) {
+return new GenerateSequenceTable(table);
+}

Review comment:
       the content in each file in documentation wasn't changed, only this code snippets were changed




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] Jakub-Sadowski commented on a change in pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
Jakub-Sadowski commented on a change in pull request #13565:
URL: https://github.com/apache/beam/pull/13565#discussion_r570093423



##########
File path: website/www/site/content/en/documentation/transforms/python/aggregation/combineperkey.md
##########
@@ -38,7 +38,7 @@ We use the function
 [`sum`](https://docs.python.org/3/library/functions.html#sum)
 which takes an `iterable` of numbers and adds them together.
 
-{{< highlight py >}}
+{{< highlight language="py" py="sdks/python/apache_beam/examples/snippets/transforms/aggregation/combineperkey.py" >}}

Review comment:
       okay I will modify it
   




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] TheNeuralBit commented on a change in pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
TheNeuralBit commented on a change in pull request #13565:
URL: https://github.com/apache/beam/pull/13565#discussion_r568820398



##########
File path: website/www/site/data/en/ways_of_contribution.yaml
##########
@@ -0,0 +1,21 @@
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+- title: Beam Technical committers
+  body: Short description with hyperlinks.
+  icon: icons/contributor/become a committer/code-icon.svg
+- title: Non-technical committers
+  body: Short description with hyperlinks.
+  icon: icons/contributor/become a committer/file-icon.svg
+- title: Website maintainers
+  body: Short description with hyperlinks.
+  icon: icons/contributor/become a committer/tool-icon.svg

Review comment:
       Still need some copy here

##########
File path: website/www/site/layouts/shortcodes/highlight.html
##########
@@ -12,20 +12,36 @@
 
 {{ $content := (trim .Inner "\n\r") | htmlUnescape | safeHTML }}
 {{ $ctx := . }}
-{{ with (.Get "class") }}
-    <div class={{ . }}>
-        {{ with ($ctx.Get "lang") }}
+{{ $py := .Get "py" }}
+{{ with (.Get "language") }}
+    <div class='{{ printf "language-%s" . }} snippet'>
+        <div class="notebook-skip code-snippet">
+            {{ with $py }}
+                <a target="_blank" type="button" data-bs-toggle="tooltip" data-bs-placement="bottom" title="Run code" href="https://colab.research.google.com/github/{{ $ctx.Site.Params.branch_repo }}/{{ $ctx.Get `notebook` }}-py.ipynb">
+                    <img src="/images/run-icon.svg"/>
+                </a>
+                <a target="_blank" type="button" data-bs-toggle="tooltip" data-bs-placement="bottom" title="View source code" href="https://github.com/{{ $ctx.Site.Params.branch_repo }}/{{ $ctx.Get `py` }}">
+                    <img src="/images/code-icon.svg"/>
+                </a>
+                <a class="copy" type="button" data-bs-toggle="tooltip" data-bs-placement="bottom" title="Copy to clipboard">
+                    <img src="/images/copy-icon.svg"/>
+                </a>
+            {{ else }}
+                <a class="copy" type="button" data-bs-toggle="tooltip" data-bs-placement="bottom" title="Copy to clipboard">
+                    <img src="/images/copy-icon.svg"/>
+                </a>
+            {{ end }}
             {{ highlight $content . "" }}
-        {{ else }}
-            {{ highlight $content "" "" }}
-        {{ end }}
+        </div>
     </div>
 {{ else }}
-    {{ with (.Get 0) }}
-        <div class={{ printf "language-%s" . }}>
-            {{ highlight $content . "" }}
+    <div class="snippet">
+        <div class="notebook-skip code-snippet without_switcher">
+            <a class="copy" type="button" data-bs-toggle="tooltip" data-bs-placement="bottom" title="Copy to clipboard">
+                <img src="/images/copy-icon.svg"/>
+            </a>
+            {{ highlight $content "" "" }}
         </div>
-    {{ else }}
-        {{ highlight $content "" "" }}
-    {{ end }}
+    </div>

Review comment:
       There are a few odd things about the way this code snippet template renders for me:
   ![image](https://user-images.githubusercontent.com/675055/106643897-34e99380-653f-11eb-8bf1-dc2bb77b6fe1.png)
   
   - There's an extra horizaontal line at the top of the snippet that extends off to the right
   - It looks like there's a 1px gap between the tabs and the top of the snippet, which looks weird to me
   - There's a lot of empty space before the first line of code (and to a lesser extent, after the last line of code), I think this looks pretty clunky, especially for snippets that have just one line.




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] Jakub-Sadowski commented on a change in pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
Jakub-Sadowski commented on a change in pull request #13565:
URL: https://github.com/apache/beam/pull/13565#discussion_r545721765



##########
File path: website/www/site/content/en/contribute/become-a-committer.md
##########
@@ -15,83 +16,31 @@ See the License for the specific language governing permissions and
 limitations under the License.
 -->
 
-# Become a Committer
-
-An Apache Beam
-[committer](https://www.apache.org/foundation/how-it-works.html#committers) has
-write access to the repository for merging pull requests, but you don't have
-to be a code contributor to become a committer. Becoming a committer means that
-you have the project's trust. Read the [ASF
-documentation](https://www.apache.org/dev/committers.html#committer-responsibilities)
-for more about being a committer in the Apache Software Foundation.
-
-The [PMC](https://www.apache.org/foundation/how-it-works.html#pmc-members)
-makes someone a committer via nomination, discussion, and then majority vote.
-We use data from as many sources as possible to inform our reasoning. Here are
-some examples:
-
- - [dev@ archives](https://lists.apache.org/list.html?dev@beam.apache.org) and [statistics](https://lists.apache.org/trends.html?dev@beam.apache.org)
- - [user@ archives](https://lists.apache.org/list.html?user@beam.apache.org) and [statistics](https://lists.apache.org/trends.html?user@beam.apache.org)
- - [`apache-beam` StackOverflow tag](https://stackoverflow.com/questions/tagged/apache-beam)
- - Git metrics for [Beam](https://github.com/apache/beam/graphs/contributors)
- - Code reviews given and received on
-   [Beam](https://github.com/apache/beam/pulls)
- - Clear areas of ownership (a runner, a DSL, IO connector, documentation,
-   etc.)
- - Public events
- - Firsthand PMC testimonials
-
-The PMC has assembled the following set of guidelines for becoming a committer.
-
-## An Apache Beam committer...
-
-### Takes many forms
-
-There are many actions other than coding that build the trust we place in a
-committer - code review, design discussion, user support, community outreach, improving
-infrastructure, documentation, project management, etc.
-
-### Knows, upholds, and reinforces the Apache Software Foundation code of conduct
-
-See the [ASF
-documentation](https://www.apache.org/foundation/policies/conduct.html). In
-particular, they manifestly strive to:
-
- - Be open
- - Be empathetic
- - Be welcoming
- - Be friendly
- - Be patient
- - Be collaborative
- - Be inquisitive
- - Be careful in the words that they choose
-
-### Knows, upholds, and reinforces the responsibilities of an Apache Software Foundation committer
-
-See the [ASF documentation](https://www.apache.org/dev/committers.html#committer-responsibilities).
-
- - They help create a product that will outlive the interest of any particular
-   volunteer (including themselves)
- - They grow and maintain the health of the Apache community
- - They help out with surrounding work, such as the website & documentation
- - They help users
- - They can be trusted to decide when code is ready for release, or when to ask
-   someone else to make the judgment
- - They can be trusted to decide when to merge code (if a code contributor) or
-   when to ask someone else to make the judgment
-
-### Knows, upholds, and reinforces the Beam community’s practices
-
- - They have a proven commitment to the project
- - They share their intentions with the community
- - They accept and integrate community feedback in their plans, designs,
-   code, etc.
- - They earnestly try to make Beam better with their contributions
- - In particular, if a code contributor:
-   - They earnestly try to make Beam better with their own code
-   - They earnestly try to make Beam better with code review
-   - They accept and integrate feedback on their code
-   - They know, follow, and enforce Beam’s practices while
-     reviewing/merging code - style, documentation, testing, backward
-     compatibility, etc.
+# Become a Beam Committer
+
+</br>
+
+An Apache Beam [committer](https://www.apache.org/foundation/how-it-works.html#committers) takes many forms. There are many actions other than coding that build the trust we place in a committer - code review, design discussion, user support, community outreach, improving infrastructure, documentation, project management, etc.
+
+</br>
+
+### What does it mean being a commiter?

Review comment:
       Thanks for finding it, all the words are replaced with latest commit




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] kgabryje commented on a change in pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
kgabryje commented on a change in pull request #13565:
URL: https://github.com/apache/beam/pull/13565#discussion_r549365246



##########
File path: website/www/site/content/en/contribute/_index.md
##########
@@ -21,57 +22,65 @@ See the License for the specific language governing permissions and
 limitations under the License.
 -->
 
-# Apache Beam Contribution Guide
+# Contribution guide
+
+</br>
+
+<div class="arrow-lists-desktop">
+
+## Overview
 
-The Apache Beam community welcomes contributions from anyone!
+</br>
 
-If you have questions, please [reach out to the Beam community](/contribute/get-help).
+There are lots of opportunities to contribute. You can for example:
 
-There are lots of opportunities to contribute:
+<div class="arrow-list">
 
- - ask or answer questions on [user@beam.apache.org](/community/contact-us/) or
-[stackoverflow](https://stackoverflow.com/questions/tagged/apache-beam)
- - review proposed design ideas on [dev@beam.apache.org](/community/contact-us/)
- - improve the documentation
- - file [bug reports](https://issues.apache.org/jira/projects/BEAM/issues)
- - test releases
- - review [changes](https://github.com/apache/beam/pulls)
- - write new examples
- - improve your favorite language SDK (Java, Python, Go, etc)
- - improve specific runners (Apache Flink, Apache Spark, Google
-   Cloud Dataflow, etc)
- - improve or add IO connectors
- - add new transform libraries (statistics, ML, image processing, etc)
- - work on the core programming model (what is a Beam pipeline and how does it
-   run?)
- - improve the developer experience (for example, Windows guides)
- - add answers to the [contribution FAQ](
- https://cwiki.apache.org/confluence/display/BEAM/Contributor+FAQ)
- - organize local meetups of users or contributors to Apache Beam
+- ask or answer questions on [user@beam.apache.org](/community/contact-us/) or
+  [stackoverflow](https://stackoverflow.com/questions/tagged/apache-beam)
+- review proposed design ideas on [dev@beam.apache.org](/community/contact-us/)
+- file [bug reports](https://issues.apache.org/jira/projects/BEAM/issues)
+- review [changes](https://github.com/apache/beam/pulls)
+- work on the core programming model (what is a Beam pipeline and how does it
+  run?)
+- improve the developer experience (for example, Windows guides)
+- organize local meetups of users or contributors to Apache Beam
 
-Most importantly, if you have an idea of how to contribute, then do it!
+</div>
+
+...and many more. Most importantly, if you have an idea of how to contribute, then do it!
+
+</br>
 
 ## Contributing code
 
+</br>
+
 Below is a tutorial for contributing code to Beam, covering our tools and typical process in
 detail.
 
+</br>
+
 ### Prerequisites
 
-To contribute code, you need
+<div class="arrow-list">
+
+- a GitHub account
+- a Linux, macOS, or Microsoft Windows development environment with Java JDK 8 installed
+- [Docker](https://www.docker.com/) installed for some tasks including building worker containers and testing this website
+  changes locally
+- [Go](https://golang.org) 1.12 or later installed for Go SDK development
+- Python 3.6, 3.7, and 3.8. Yes, you need all four versions installed.
+
+  pip, setuptools, virtualenv, and tox installed for Python development
+
+- for large contributions, a signed [Individual Contributor License
+  Agreement](https://www.apache.org/licenses/icla.pdf) (ICLA) to the Apache
+  Software Foundation (ASF).
 
- - a GitHub account
- - a Linux, macOS, or Microsoft Windows development environment with Java JDK 8 installed
- - [Docker](https://www.docker.com/) installed for some tasks including building worker containers and testing this website
-   changes locally
- - [Go](https://golang.org) 1.12 or later installed for Go SDK development
- - Python 3.6, 3.7, and 3.8. Yes, you need all three versions installed.
-    - pip, setuptools, virtualenv, and tox installed for Python development
- - for large contributions, a signed [Individual Contributor License
-   Agreement](https://www.apache.org/licenses/icla.pdf) (ICLA) to the Apache
-   Software Foundation (ASF).
+</div>

Review comment:
       I think that we could remove this div, like @TheNeuralBit requested, by styling `<li>` elements with some wrapper class in `/layouts/contribute/baseof.html`. We could replace 
   ```
   <div class="body__contained body__section-nav">
         {{ .Content }}
   </div>
   ```
   with
   ```
   <div class="body__contained body__section-nav arrow-list">
         {{ .Content }}
   </div>
   ```
   
   WDYT?




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] TheNeuralBit commented on a change in pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
TheNeuralBit commented on a change in pull request #13565:
URL: https://github.com/apache/beam/pull/13565#discussion_r569559285



##########
File path: website/www/site/content/en/blog/adding-data-sources-to-sql.md
##########
@@ -81,7 +81,7 @@ The `TableProvider` classes are under
 
 Our table provider looks like this:
 
-{{< highlight java >}}
+{{< highlight language="java" >}}

Review comment:
       Is it not possible to make the original `highlight java` syntax work? That would be preferable to changing the short codes everywhere.

##########
File path: website/www/site/content/en/contribute/practises.md
##########
@@ -0,0 +1,66 @@
+---
+title: "Beam community’s practises"
+layout: "arrow_template"
+---
+
+<!--
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+-->
+
+# Beam community’s practises

Review comment:
       nit: I think we should use the American English "practices" throughout this page (and in the title)

##########
File path: website/www/site/content/en/contribute/ptransform-style-guide.md
##########
@@ -230,76 +234,76 @@ E.g. if you want to return a `PCollection<Foo>` and a `PCollection<Bar>`, expose
 
 For example:
 
-{{< highlight java >}}
+{{< highlight language="java" >}}
 public class MyTransform extends PTransform<..., PCollectionTuple> {
-  private final TupleTag<Moo> mooTag = new TupleTag<Moo>() {};
-  private final TupleTag<Blah> blahTag = new TupleTag<Blah>() {};
-  ...
-  PCollectionTuple expand(... input) {
-    ...
-    PCollection<Moo> moo = ...;
-    PCollection<Blah> blah = ...;
-    return PCollectionTuple.of(mooTag, moo)
-                           .and(blahTag, blah);
-  }
+private final TupleTag<Moo> mooTag = new TupleTag<Moo>() {};
+private final TupleTag<Blah> blahTag = new TupleTag<Blah>() {};
+...
+PCollectionTuple expand(... input) {
+...
+PCollection<Moo> moo = ...;
+PCollection<Blah> blah = ...;
+return PCollectionTuple.of(mooTag, moo)
+.and(blahTag, blah);
+}
 
-  public TupleTag<Moo> getMooTag() {
-    return mooTag;
-  }
+public TupleTag<Moo> getMooTag() {
+return mooTag;
+}
 
-  public TupleTag<Blah> getBlahTag() {
-    return blahTag;
-  }
-  ...

Review comment:
       It looks like there are still some cases where leading whitespace in code snippets has been remvoed. Please revert these

##########
File path: website/www/site/content/en/contribute/ptransform-style-guide.md
##########
@@ -24,189 +25,192 @@ _A style guide for writers of new reusable PTransforms._
 ## Language-neutral considerations
 
 ### Consistency
+
 Be consistent with prior art:
 
-* Please read the [contribution guide](/contribute/).
-* If there is already a similar transform in some SDK, make the API of your transform similar, so that users' experience with one of them will transfer to the other. This applies to transforms in the same-language SDK and different-language SDKs.
-*Exception:* pre-existing transforms that clearly violate the current style guide for the sole reason that they were developed before this guide was ratified. In this case, the style guide takes priority over consistency with the existing transform.
-* When there is no existing similar transform, stay within what is idiomatic within your language of choice (e.g. Java or Python).
+- Please read the [contribution guide](/contribute/).
+- If there is already a similar transform in some SDK, make the API of your transform similar, so that users' experience with one of them will transfer to the other. This applies to transforms in the same-language SDK and different-language SDKs.
+  _Exception:_ pre-existing transforms that clearly violate the current style guide for the sole reason that they were developed before this guide was ratified. In this case, the style guide takes priority over consistency with the existing transform.
+- When there is no existing similar transform, stay within what is idiomatic within your language of choice (e.g. Java or Python).
 
 ### Exposing a PTransform vs. something else
 
 So you want to develop a library that people will use in their Beam pipelines - a connector to a third-party system, a machine learning algorithm, etc. How should you expose it?
 
 Do:
 
-* Expose every major data-parallel task accomplished by your library as a composite `PTransform`. This allows the structure of the transform to evolve transparently to the code that uses it: e.g. something that started as a `ParDo` can become a more complex transform over time.
-* Expose large, non-trivial, reusable sequential bits of the transform's code, which others might want to reuse in ways you haven't anticipated, as a regular function or class library. The transform should simply wire this logic together. As a side benefit, you can unit-test those functions and classes independently.
-*Example:* when developing a transform that parses files in a custom data format, expose the format parser as a library; likewise for a transform that implements a complex machine learning algorithm, etc.
-* In some cases, this may include Beam-specific classes, such as `CombineFn`, or nontrivial `DoFn`s (those that are more than just a single `@ProcessElement` method).
-As a rule of thumb: expose these if you anticipate that the full packaged `PTransform` may be insufficient for a user's needs and the user may want to reuse the lower-level primitive.
+- Expose every major data-parallel task accomplished by your library as a composite `PTransform`. This allows the structure of the transform to evolve transparently to the code that uses it: e.g. something that started as a `ParDo` can become a more complex transform over time.
+- Expose large, non-trivial, reusable sequential bits of the transform's code, which others might want to reuse in ways you haven't anticipated, as a regular function or class library. The transform should simply wire this logic together. As a side benefit, you can unit-test those functions and classes independently.
+  _Example:_ when developing a transform that parses files in a custom data format, expose the format parser as a library; likewise for a transform that implements a complex machine learning algorithm, etc.
+- In some cases, this may include Beam-specific classes, such as `CombineFn`, or nontrivial `DoFn`s (those that are more than just a single `@ProcessElement` method).
+  As a rule of thumb: expose these if you anticipate that the full packaged `PTransform` may be insufficient for a user's needs and the user may want to reuse the lower-level primitive.
 
 Do not:
 
-* Do not expose the exact way the transform is internally structured. E.g.: the public API surface of your library *usually* (with exception of the last bullet above) should not expose `DoFn`, concrete `Source` or `Sink` classes, etc., in order to avoid presenting users with a confusing choice between applying the `PTransform` or using the `DoFn`/`Source`/`Sink`.
+- Do not expose the exact way the transform is internally structured. E.g.: the public API surface of your library _usually_ (with exception of the last bullet above) should not expose `DoFn`, concrete `Source` or `Sink` classes, etc., in order to avoid presenting users with a confusing choice between applying the `PTransform` or using the `DoFn`/`Source`/`Sink`.
 
 ### Naming
 
 Do:
 
-* Respect language-specific naming conventions, e.g. name classes in `PascalCase` in Java and Python, functions in `camelCase` in Java but `snake_case` in Python, etc.
-* Name factory functions so that either the function name is a verb, or referring to the transform reads like a verb: e.g. `MongoDbIO.read()`, `Flatten.iterables()`.
-* In typed languages, name `PTransform` classes also like verbs (e.g.: `MongoDbIO.Read`, `Flatten.Iterables`).
-* Name families of transforms for interacting with a storage system using the word "IO": `MongoDbIO`, `JdbcIO`.
+- Respect language-specific naming conventions, e.g. name classes in `PascalCase` in Java and Python, functions in `camelCase` in Java but `snake_case` in Python, etc.
+- Name factory functions so that either the function name is a verb, or referring to the transform reads like a verb: e.g. `MongoDbIO.read()`, `Flatten.iterables()`.
+- In typed languages, name `PTransform` classes also like verbs (e.g.: `MongoDbIO.Read`, `Flatten.Iterables`).
+- Name families of transforms for interacting with a storage system using the word "IO": `MongoDbIO`, `JdbcIO`.
 
 Do not:
 
-* Do not use words `transform`, `source`, `sink`, `reader`, `writer`, `bound`, `unbound` in `PTransform` class names (note: `bounded` and `unbounded` are fine when referring to whether a `PCollection` is bounded or unbounded): these words are redundant, confusing, obsolete, or name an existing different concept in the SDK.
+- Do not use words `transform`, `source`, `sink`, `reader`, `writer`, `bound`, `unbound` in `PTransform` class names (note: `bounded` and `unbounded` are fine when referring to whether a `PCollection` is bounded or unbounded): these words are redundant, confusing, obsolete, or name an existing different concept in the SDK.
 
 ### Configuration
 
 #### What goes into configuration vs. input collection
 
-* **Into input `PCollection`:** anything of which there may be a very large number of instances (if there can be >1000 of it, it should be in a `PCollection`), or which is potentially not known at pipeline construction time.
-E.g.: records to be processed or written to a third-party system; filenames to be read.
-Exception: sometimes Beam APIs require things to be known at pipeline construction time - e.g. the `Bounded`/`UnboundedSource` API. If you absolutely have to use such an API, its input can of course go only into transform configuration.
-* **Into transform configuration:** what is constant throughout the transform (including `ValueProvider`s) and does not depend on the contents of the transform's input `PCollection`s.
-E.g.: a database query or connection string; credentials; a user-specified callback; a tuning parameter.
-One advantage of putting a parameter into transform configuration is, it can be validated at pipeline construction time.
+- **Into input `PCollection`:** anything of which there may be a very large number of instances (if there can be >1000 of it, it should be in a `PCollection`), or which is potentially not known at pipeline construction time.
+  E.g.: records to be processed or written to a third-party system; filenames to be read.
+  Exception: sometimes Beam APIs require things to be known at pipeline construction time - e.g. the `Bounded`/`UnboundedSource` API. If you absolutely have to use such an API, its input can of course go only into transform configuration.
+- **Into transform configuration:** what is constant throughout the transform (including `ValueProvider`s) and does not depend on the contents of the transform's input `PCollection`s.
+  E.g.: a database query or connection string; credentials; a user-specified callback; a tuning parameter.
+  One advantage of putting a parameter into transform configuration is, it can be validated at pipeline construction time.
 
 #### What parameters to expose
 
 Do:
 
-* **Expose** parameters that are necessary to compute the output.
+- **Expose** parameters that are necessary to compute the output.
 
 Do not:
 
-* **Do not expose** tuning knobs, such as batch sizes, connection pool sizes, unless it's impossible to automatically supply or compute a good-enough value (i.e., unless you can imagine a reasonable person reporting a bug about the absence of this knob).
-* When developing a connector to a library that has many parameters, **do not mirror each parameter** of the underlying library - if necessary, reuse the underlying library's configuration class and let user supply a whole instance. Example: `JdbcIO`.
-*Exception 1:* if some parameters of the underlying library interact with Beam semantics non-trivially, then expose them. E.g. when developing a connector to a pub/sub system that has a "delivery guarantee" parameter for publishers, expose the parameter but prohibit values incompatible with the Beam model (at-most-once and exactly-once).
-*Exception 2:* if the underlying library's configuration class is cumbersome to use - e.g. does not declare a stable API, exposes problematic transitive dependencies, or does not obey [semantic versioning](https://semver.org/) - in this case, it is better to wrap it and expose a cleaner and more stable API to users of the transform.
+- **Do not expose** tuning knobs, such as batch sizes, connection pool sizes, unless it's impossible to automatically supply or compute a good-enough value (i.e., unless you can imagine a reasonable person reporting a bug about the absence of this knob).
+- When developing a connector to a library that has many parameters, **do not mirror each parameter** of the underlying library - if necessary, reuse the underlying library's configuration class and let user supply a whole instance. Example: `JdbcIO`.
+  _Exception 1:_ if some parameters of the underlying library interact with Beam semantics non-trivially, then expose them. E.g. when developing a connector to a pub/sub system that has a "delivery guarantee" parameter for publishers, expose the parameter but prohibit values incompatible with the Beam model (at-most-once and exactly-once).
+  _Exception 2:_ if the underlying library's configuration class is cumbersome to use - e.g. does not declare a stable API, exposes problematic transitive dependencies, or does not obey [semantic versioning](https://semver.org/) - in this case, it is better to wrap it and expose a cleaner and more stable API to users of the transform.
 
 ### Error handling
 
 #### Transform configuration errors
 
 Detect errors early. Errors can be detected at the following stages:
 
-* (in a compiled language) compilation of the source code of a user's pipeline
-* constructing or setting up the transform
-* applying the transform in a pipeline
-* running the pipeline
+- (in a compiled language) compilation of the source code of a user's pipeline
+- constructing or setting up the transform
+- applying the transform in a pipeline
+- running the pipeline
 
 For example:
 
-* In a typed language, take advantage of compile-time error checking by making the API of the transform strongly-typed:
-    * **Strongly-typed configuration:** e.g. in Java, a parameter that is a URL should use the `URL` class, rather than the `String` class.
-    * **Strongly-typed input and output:** e.g. a transform that writes to Mongo DB should take a `PCollection<Document>` rather than `PCollection<String>` (assuming it is possible to provide a `Coder` for `Document`).
-* Detect invalid values of individual parameters in setter methods.
-* Detect invalid combinations of parameters in the transform's validate method.
+- In a typed language, take advantage of compile-time error checking by making the API of the transform strongly-typed:
+  - **Strongly-typed configuration:** e.g. in Java, a parameter that is a URL should use the `URL` class, rather than the `String` class.
+  - **Strongly-typed input and output:** e.g. a transform that writes to Mongo DB should take a `PCollection<Document>` rather than `PCollection<String>` (assuming it is possible to provide a `Coder` for `Document`).
+- Detect invalid values of individual parameters in setter methods.
+- Detect invalid combinations of parameters in the transform's validate method.
 
 #### Runtime errors and data consistency
 
 Favor data consistency above everything else. Do not mask data loss or corruption. If data loss can't be prevented, fail.
 
 Do:
 
-* In a `DoFn`, retry transient failures if the operation is likely to succeed on retry. Perform such retries at the narrowest scope possible in order to minimize the amount of retried work (i.e. ideally at the level of the RPC library itself, or at the level of directly sending the failing RPC to a third-party system). Otherwise, let the runner retry work at the appropriate level of granularity for you (different runners may have different retry behavior, but most of them do *some* retrying).
-* If the transform has side effects, strive to make them idempotent (i.e. safe to apply multiple times). Due to retries, the side effects may be executed multiple times, possibly in parallel.
-* If the transform can have unprocessable (permanently failing) records and you want the pipeline to proceed despite that:
-    * If bad records are safe to ignore, count the bad records in a metric. Make sure the transform's documentation mentions this aggregator. Beware that there is no programmatic access to reading the aggregator value from inside the pipeline during execution.
-    * If bad records may need manual inspection by the user, emit them into an output that contains only those records.
-    * Alternatively take a (default zero) threshold above which element failures become bundle failures (structure the transform to count the total number of elements and of failed elements, compare them and fail if failures are above the threshold).
-* If the user requests a higher data consistency guarantee than you're able to provide, fail. E.g.: if a user requests QoS 2 (exactly-once delivery) from an MQTT connector, the connector should fail since Beam runners may retry writing to the connector and hence exactly-once delivery can't be done.
+- In a `DoFn`, retry transient failures if the operation is likely to succeed on retry. Perform such retries at the narrowest scope possible in order to minimize the amount of retried work (i.e. ideally at the level of the RPC library itself, or at the level of directly sending the failing RPC to a third-party system). Otherwise, let the runner retry work at the appropriate level of granularity for you (different runners may have different retry behavior, but most of them do _some_ retrying).
+- If the transform has side effects, strive to make them idempotent (i.e. safe to apply multiple times). Due to retries, the side effects may be executed multiple times, possibly in parallel.
+- If the transform can have unprocessable (permanently failing) records and you want the pipeline to proceed despite that:
+  - If bad records are safe to ignore, count the bad records in a metric. Make sure the transform's documentation mentions this aggregator. Beware that there is no programmatic access to reading the aggregator value from inside the pipeline during execution.
+  - If bad records may need manual inspection by the user, emit them into an output that contains only those records.
+  - Alternatively take a (default zero) threshold above which element failures become bundle failures (structure the transform to count the total number of elements and of failed elements, compare them and fail if failures are above the threshold).
+- If the user requests a higher data consistency guarantee than you're able to provide, fail. E.g.: if a user requests QoS 2 (exactly-once delivery) from an MQTT connector, the connector should fail since Beam runners may retry writing to the connector and hence exactly-once delivery can't be done.
 
 Do not:
 
-* If you can't handle a failure, don't even catch it.
-*Exception: *It may be valuable to catch the error, log a message, and rethrow it, if you're able to provide valuable context that the original error doesn't have.
-* Never, ever, ever do this:
-`catch(...)  { log an error; return null or false or otherwise ignore; }`
-**Rule of thumb: if a bundle didn't fail, its output must be correct and complete.**
-For a user, a transform that logged an error but succeeded is silent data loss.
+- If you can't handle a failure, don't even catch it.
+  *Exception: *It may be valuable to catch the error, log a message, and rethrow it, if you're able to provide valuable context that the original error doesn't have.
+- Never, ever, ever do this:
+  `catch(...) { log an error; return null or false or otherwise ignore; }`
+  **Rule of thumb: if a bundle didn't fail, its output must be correct and complete.**
+  For a user, a transform that logged an error but succeeded is silent data loss.
 
 ### Performance
 
 Many runners optimize chains of `ParDo`s in ways that improve performance if the `ParDo`s emit a small to moderate number of elements per input element, or have relatively cheap per-element processing (e.g. Dataflow's "fusion"), but limit parallelization if these assumptions are violated. In that case you may need a "fusion break" (`Reshuffle.of()`) to improve the parallelizability of processing the output `PCollection` of the `ParDo`.
 
-* If the transform includes a `ParDo` that outputs a potentially large number of elements per input element, apply a fusion break after this `ParDo` to make sure downstream transforms can process its output in parallel.
-* If the transform includes a `ParDo` that takes a very long time to process an element, insert a fusion break before this `ParDo` to make sure all or most elements can be processed in parallel regardless of how its input `PCollection` was produced.
+- If the transform includes a `ParDo` that outputs a potentially large number of elements per input element, apply a fusion break after this `ParDo` to make sure downstream transforms can process its output in parallel.
+- If the transform includes a `ParDo` that takes a very long time to process an element, insert a fusion break before this `ParDo` to make sure all or most elements can be processed in parallel regardless of how its input `PCollection` was produced.
 
 ### Documentation
 
 Document how to configure the transform (give code examples), and what guarantees it expects about its input or provides about its output, accounting for the Beam model. E.g.:
 
-* Are the input and output collections of this transform bounded or unbounded, or can it work with either?
-* If the transform writes data to a third-party system, does it guarantee that data will be written at least once? at most once? exactly once? (how does it achieve exactly-once in case the runner executes a bundle multiple times due to retries or speculative execution a.k.a. backups?)
-* If the transform reads data from a third-party system, what's the maximum potential degree of parallelism of the read? E.g., if the transform reads data sequentially (e.g. executes a single SQL query), documentation should mention that.
-* If the transform is querying an external system during processing (e.g. joining a `PCollection` with information from an external key-value store), what are the guarantees on freshness of queried data: e.g. is it all loaded at the beginning of the transform, or queried per-element (in that case, what if data for a single element changes while the transform runs)?
-* If there's a non-trivial relationship between arrival of items in the input `PCollection` and emitting output into the output `PCollection`, what is this relationship? (e.g. if the transform internally does windowing, triggering, grouping, or uses the state or timers API)
+- Are the input and output collections of this transform bounded or unbounded, or can it work with either?
+- If the transform writes data to a third-party system, does it guarantee that data will be written at least once? at most once? exactly once? (how does it achieve exactly-once in case the runner executes a bundle multiple times due to retries or speculative execution a.k.a. backups?)
+- If the transform reads data from a third-party system, what's the maximum potential degree of parallelism of the read? E.g., if the transform reads data sequentially (e.g. executes a single SQL query), documentation should mention that.
+- If the transform is querying an external system during processing (e.g. joining a `PCollection` with information from an external key-value store), what are the guarantees on freshness of queried data: e.g. is it all loaded at the beginning of the transform, or queried per-element (in that case, what if data for a single element changes while the transform runs)?
+- If there's a non-trivial relationship between arrival of items in the input `PCollection` and emitting output into the output `PCollection`, what is this relationship? (e.g. if the transform internally does windowing, triggering, grouping, or uses the state or timers API)
 
 ### Logging
 
 Anticipate abnormal situations that a user of the transform may run into. Log information that they would have found sufficient for debugging, but limit the volume of logging. Here is some advice that applies to all programs, but is especially important when data volume is massive and execution is distributed.
 
 Do:
 
-* When handling an error from a third-party system, log the full error with any error details the third-party system provides about it, and include any additional context the transform knows. This enables the user to take action based on the information provided in the message. When handling an exception and rethrowing your own exception, wrap the original exception in it (some languages offer more advanced facilities, e.g. Java's "suppressed exceptions"). Never silently drop available information about an error.
-* When performing a rare (not per-element) and slow operation (e.g. expanding a large file-pattern, or initiating an import/export job), log when the operation begins and ends. If the operation has an identifier, log the identifier, so the user can look up the operation for later debugging.
-* When computing something low-volume that is critically important for correctness or performance of further processing, log the input and output, so a user in the process of debugging can sanity-check them or reproduce an abnormal result manually.
-E.g. when expanding a filepattern into files, log what the filepattern was and how many parts it was split into; when executing a query, log the query and log how many results it produced.
+- When handling an error from a third-party system, log the full error with any error details the third-party system provides about it, and include any additional context the transform knows. This enables the user to take action based on the information provided in the message. When handling an exception and rethrowing your own exception, wrap the original exception in it (some languages offer more advanced facilities, e.g. Java's "suppressed exceptions"). Never silently drop available information about an error.
+- When performing a rare (not per-element) and slow operation (e.g. expanding a large file-pattern, or initiating an import/export job), log when the operation begins and ends. If the operation has an identifier, log the identifier, so the user can look up the operation for later debugging.
+- When computing something low-volume that is critically important for correctness or performance of further processing, log the input and output, so a user in the process of debugging can sanity-check them or reproduce an abnormal result manually.
+  E.g. when expanding a filepattern into files, log what the filepattern was and how many parts it was split into; when executing a query, log the query and log how many results it produced.
 
 Do not:
 
-* Do not log at `INFO` per element or per bundle. `DEBUG`/`TRACE` may be okay because these levels are disabled by default.
-* Avoid logging data payloads that may contain sensitive information, or sanitize them before logging (e.g. user data, credentials, etc).
+- Do not log at `INFO` per element or per bundle. `DEBUG`/`TRACE` may be okay because these levels are disabled by default.
+- Avoid logging data payloads that may contain sensitive information, or sanitize them before logging (e.g. user data, credentials, etc).
 
 ### Testing
 
 Data processing is tricky, full of corner cases, and difficult to debug, because pipelines take a long time to run, it's hard to check if the output is correct, you can't attach a debugger, and you often can't log as much as you wish to, due to high volume of data. Because of that, testing is particularly important.
 
 #### Testing the transform's run-time behavior
 
-* Unit-test the overall semantics of the transform using `TestPipeline` and `PAssert`. Start with testing against the direct runner. Assertions on `PCollection` contents should be strict: e.g. when a read from a database is expected to read the numbers 1 through 10, assert not just that there are 10 elements in the output `PCollection`, or that each element is in the range [1, 10] - but assert that each number 1 through 10 appears exactly once.
-* Identify non-trivial sequential logic in the transform that is prone to corner cases which are difficult to reliably simulate using a `TestPipeline`, extract this logic into unit-testable functions, and unit-test them. Common corner cases are:
-    * `DoFn`s processing empty bundles
-    * `DoFn`s processing extremely large bundles (contents doesn't fit in memory, including "hot keys" with a very large number of values)
-    * Third-party APIs failing
-    * Third-party APIs providing wildly inaccurate information
-    * Leaks of `Closeable`/`AutoCloseable` resources in failure cases
-    * Common corner cases when developing sources: complicated arithmetic in `BoundedSource.split` (e.g. splitting key or offset ranges), iteration over empty data sources or composite data sources that have some empty components.
-* Mock out the interactions with third-party systems, or better, use ["fake"](https://martinfowler.com/articles/mocksArentStubs.html) implementations when available. Make sure that the mocked-out interactions are representative of all interesting cases of the actual behavior of these systems.
-* To unit test `DoFn`s, `CombineFn`s, and `BoundedSource`s, consider using `DoFnTester`, `CombineFnTester`, and `SourceTestUtils` respectively which can exercise the code in non-trivial ways to flesh out potential bugs.
-* For transforms that work over unbounded collections, test their behavior in the presence of late or out-of-order data using `TestStream`.
-* Tests must pass 100% of the time, including in hostile, CPU- or network-constrained environments (continuous integration servers). Never put timing-dependent code (e.g. sleeps) into tests. Experience shows that no reasonable amount of sleeping is enough - code can be suspended for more than several seconds.
-* For detailed instructions on test code organization, see the [Beam Testing Guide](https://cwiki.apache.org/confluence/display/BEAM/Contribution+Testing+Guide).
+- Unit-test the overall semantics of the transform using `TestPipeline` and `PAssert`. Start with testing against the direct runner. Assertions on `PCollection` contents should be strict: e.g. when a read from a database is expected to read the numbers 1 through 10, assert not just that there are 10 elements in the output `PCollection`, or that each element is in the range [1, 10] - but assert that each number 1 through 10 appears exactly once.
+- Identify non-trivial sequential logic in the transform that is prone to corner cases which are difficult to reliably simulate using a `TestPipeline`, extract this logic into unit-testable functions, and unit-test them. Common corner cases are:
+  - `DoFn`s processing empty bundles
+  - `DoFn`s processing extremely large bundles (contents doesn't fit in memory, including "hot keys" with a very large number of values)
+  - Third-party APIs failing
+  - Third-party APIs providing wildly inaccurate information
+  - Leaks of `Closeable`/`AutoCloseable` resources in failure cases
+  - Common corner cases when developing sources: complicated arithmetic in `BoundedSource.split` (e.g. splitting key or offset ranges), iteration over empty data sources or composite data sources that have some empty components.
+- Mock out the interactions with third-party systems, or better, use ["fake"](https://martinfowler.com/articles/mocksArentStubs.html) implementations when available. Make sure that the mocked-out interactions are representative of all interesting cases of the actual behavior of these systems.
+- To unit test `DoFn`s, `CombineFn`s, and `BoundedSource`s, consider using `DoFnTester`, `CombineFnTester`, and `SourceTestUtils` respectively which can exercise the code in non-trivial ways to flesh out potential bugs.
+- For transforms that work over unbounded collections, test their behavior in the presence of late or out-of-order data using `TestStream`.
+- Tests must pass 100% of the time, including in hostile, CPU- or network-constrained environments (continuous integration servers). Never put timing-dependent code (e.g. sleeps) into tests. Experience shows that no reasonable amount of sleeping is enough - code can be suspended for more than several seconds.
+- For detailed instructions on test code organization, see the [Beam Testing Guide](https://cwiki.apache.org/confluence/display/BEAM/Contribution+Testing+Guide).
 
 #### Testing transform construction and validation
 
 The code for constructing and validating a transform is usually trivial and mostly boilerplate. However, minor mistakes or typos in it can have serious consequences (e.g. ignoring a property that the user has set), so it needs to be tested as well. Yet, an excessive amount of trivial tests can be hard to maintain and give a false impression that the transform is well-tested.
 
 Do:
-* Test non-trivial validation code, where missing/incorrect/uninformative validation may lead to serious problems: data loss, counter-intuitive behavior, value of a property being silently ignored, or other hard-to-debug errors. Create 1 test per non-trivial class of validation error. Some examples of validation that should be tested:
-    * If properties `withFoo()` and `withBar()` cannot both be specified at the same time, test that a transform specifying both of them is rejected, rather than one of the properties being silently ignored at runtime.
-    * If the transform is known to behave incorrectly or counter-intuitively for a particular configuration, test that this configuration is rejected, rather than producing wrong results at runtime. For example, a transform might work properly only for bounded collections, or only for globally-windowed collections. Or, suppose a streaming system supports several levels of "quality of service", one of which is "exactly once delivery". However, a transform that writes to this system might be unable to provide exactly-once due to retries in case of failures. In that case, test that the transform disallows specifying exactly-once QoS, rather than failing to provide the expected end-to-end semantics at runtime.
-* Test that each `withFoo()` method (including each overload) has effect (is not ignored), using `TestPipeline` and `PAssert` to create tests where the expected test results depend on the value of `withFoo()`.
+
+- Test non-trivial validation code, where missing/incorrect/uninformative validation may lead to serious problems: data loss, counter-intuitive behavior, value of a property being silently ignored, or other hard-to-debug errors. Create 1 test per non-trivial class of validation error. Some examples of validation that should be tested:
+  - If properties `withFoo()` and `withBar()` cannot both be specified at the same time, test that a transform specifying both of them is rejected, rather than one of the properties being silently ignored at runtime.
+  - If the transform is known to behave incorrectly or counter-intuitively for a particular configuration, test that this configuration is rejected, rather than producing wrong results at runtime. For example, a transform might work properly only for bounded collections, or only for globally-windowed collections. Or, suppose a streaming system supports several levels of "quality of service", one of which is "exactly once delivery". However, a transform that writes to this system might be unable to provide exactly-once due to retries in case of failures. In that case, test that the transform disallows specifying exactly-once QoS, rather than failing to provide the expected end-to-end semantics at runtime.
+- Test that each `withFoo()` method (including each overload) has effect (is not ignored), using `TestPipeline` and `PAssert` to create tests where the expected test results depend on the value of `withFoo()`.
 
 Do not:
-* Do not test successful validation (e.g. "validation does not fail when the transform is configured correctly")
-* Do not test trivial validation errors (e.g. "validation fails when a property is unset/null/empty/negative/...")
+
+- Do not test successful validation (e.g. "validation does not fail when the transform is configured correctly")
+- Do not test trivial validation errors (e.g. "validation fails when a property is unset/null/empty/negative/...")
 
 ### Compatibility
 
 Do:
 
-* Generally, follow the rules of [semantic versioning](https://semver.org/).
-* If the API of the transform is not yet stable, annotate it as `@Experimental` (Java) or `@experimental` ([Python](https://beam.apache.org/releases/pydoc/{{< param release_latest >}}/apache_beam.utils.annotations.html)).
-* If the API deprecated, annotate it as `@Deprecated` (Java) or `@deprecated` ([Python](https://beam.apache.org/releases/pydoc/{{< param release_latest >}}/apache_beam.utils.annotations.html)).
-* Pay attention to the stability and versioning of third-party classes exposed by the transform's API: if they are unstable or improperly versioned (do not obey [semantic versioning](https://semver.org/)), it is better to wrap them in your own classes.
+- Generally, follow the rules of [semantic versioning](https://semver.org/).
+- If the API of the transform is not yet stable, annotate it as `@Experimental` (Java) or `@experimental` ([Python](https://beam.apache.org/releases/pydoc/{{< param release_latest >}}/apache_beam.utils.annotations.html)).
+- If the API deprecated, annotate it as `@Deprecated` (Java) or `@deprecated` ([Python](https://beam.apache.org/releases/pydoc/{{< param release_latest >}}/apache_beam.utils.annotations.html)).
+- Pay attention to the stability and versioning of third-party classes exposed by the transform's API: if they are unstable or improperly versioned (do not obey [semantic versioning](https://semver.org/)), it is better to wrap them in your own classes.
 
 Do not:
 
-* Do not silently change the behavior of the transform, in a way where code will keep compiling but will do something different than the previously documented behavior (e.g. produce different output or expect different input, of course unless the previous output was incorrect).
-Strive to make such incompatible behavior changes cause a compile error (e.g. it's better to introduce a new transform for a new behavior and deprecate and then delete the old one (in a new major version), than to silently change the behavior of an existing transform), or at least a runtime error.
-* If the behavior of the transform stays the same and you're merely changing implementation or API - do not change API of the transform in a way that will make a user's code stop compiling.

Review comment:
       Similarly, there are still a lot of these changes where just bullet points are changed. Please revert these.
   
   I'd suggest just using  `git checkout website-revamp -- website/www/site/content/en/contribute/ptransform-style-guide.md` for each affected file.
   
   Then if it is absolutely necessary to switch from java to language="java" you might use a tool like `sed` to make the changes all at once.

##########
File path: website/www/site/content/en/blog/beam-2.22.0.md
##########
@@ -18,7 +18,7 @@ See the License for the specific language governing permissions and
 limitations under the License.
 -->
 We are happy to present the new 2.22.0 release of Beam. This release includes both improvements and new functionality.
-See the [download page](/get-started/downloads/#2220-2020-06-08) for this release.<!--more-->
+See the [download page](/get-started/downloads/#2220-2020-06-08) for this release.

Review comment:
       It looks like this change is backing out some recent changes to blog posts, as well as deleting some recent blog posts (e.g. the 2.26.0 and 2.27.0 post, and my own dataframe-api-preview-available). Can you bring these back?

##########
File path: website/www/site/content/en/contribute/practises.md
##########
@@ -0,0 +1,66 @@
+---
+title: "Beam community’s practises"
+layout: "arrow_template"
+---
+
+<!--
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+-->
+
+# Beam community’s practises
+
+{{< figure src="/images/community/messages-icon.svg" >}}
+
+## Knows, upholds, and reinforces the Beam community’s practices
+
+- They have a proven commitment to the project
+- They share their intentions with the community
+- They accept and integrate community feedback in their plans, designs, code, etc.
+- They earnestly try to make Beam better with their contributions
+
+In particular, if a code contributor:
+
+- They earnestly try to make Beam better with their own code
+- They earnestly try to make Beam better with code review
+- They accept and integrate feedback on their code
+- They know, follow, and enforce Beam’s practices while reviewing/merging code - style, documentation, testing, backward compatibility, etc.
+
+{{< figure src="/images/community/beam-logo-icon.svg" >}}
+
+## Knows, upholds, and reinforces the Apache Software Foundation code of conduct
+
+In particular, we manifestly strive to:
+
+- Be open
+- Be empathetic
+- Be welcoming
+- Be friendly
+- Be patient
+- Be collaborative
+- Be inquisitive
+- Be careful in the words that they choose
+
+[To learn more see the ASF documentation.](https://httpd.apache.org/docs/)
+
+{{< figure src="/images/community/diamond-icon.svg" >}}
+
+## Knows, upholds, and reinforces the responsibilities of an Apache Software Foundation committer
+
+- They help create a product that will outlive the interest of any particular volunteer (including themselves)
+- They grow and maintain the health of the Apache community
+- They help out with surrounding work, such as the website & documentation
+- They help users
+- They can be trusted to decide when code is ready for release, or when to ask someone else to make the judgment
+- They can be trusted to decide when to merge code (if a code contributor) or when to ask someone else to make the judgment
+
+[To learn more see the ASF documentation.](https://httpd.apache.org/docs/)

Review comment:
       I can't find this page in the TDD to confirm that the copy is correct. Is this another page where we're waiting on final copy from @griscz?




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] TheNeuralBit merged pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
TheNeuralBit merged pull request #13565:
URL: https://github.com/apache/beam/pull/13565


   


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] Jakub-Sadowski commented on a change in pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
Jakub-Sadowski commented on a change in pull request #13565:
URL: https://github.com/apache/beam/pull/13565#discussion_r567324820



##########
File path: website/www/site/content/en/contribute/_index.md
##########
@@ -83,217 +76,136 @@ sudo apt-get install \
    docker-ce
 ```
 
-On some systems (like Ubuntu 20.04) these need to be installed also
-```
-pip3 install grpcio-tools mypy-protobuf
-```
+</br>
 
 You also need to [install Go](https://golang.org/doc/install).
 
+</br>
+
 Once Go is installed, install goavro:
 
+</br>
+
 ```
 $ export GOPATH=`pwd`/sdks/go/examples/.gogradle/project_gopath
 $ go get github.com/linkedin/goavro
 ```
 
-gLinux users should configure their machines for sudoless Docker.
-
-Alternatively, you can use the Docker based local development environment to wrap your clone of the Beam repo
-into a container meeting the requirements above.
-
-You can start this container using the [start-build-env.sh](https://github.com/apache/beam/blob/master/start-build-env.sh)
-script which is part of the Beam repo:
-```
-./start-build-env.sh
-```

Review comment:
       I will change all contents manually at monday and tuesday




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] TheNeuralBit commented on a change in pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
TheNeuralBit commented on a change in pull request #13565:
URL: https://github.com/apache/beam/pull/13565#discussion_r568261897



##########
File path: website/www/site/content/en/blog/adding-data-sources-to-sql.md
##########
@@ -81,19 +81,19 @@ The `TableProvider` classes are under
 
 Our table provider looks like this:
 
-{{< highlight java >}}
+{{< highlight language="java" >}}
 @AutoService(TableProvider.class)
 public class GenerateSequenceTableProvider extends InMemoryMetaTableProvider {
 
-  @Override
-  public String getTableType() {
-    return "sequence";
-  }
+@Override
+public String getTableType() {
+return "sequence";
+}
 
-  @Override
-  public BeamSqlTable buildBeamSqlTable(Table table) {
-    return new GenerateSequenceTable(table);
-  }
+@Override
+public BeamSqlTable buildBeamSqlTable(Table table) {
+return new GenerateSequenceTable(table);
+}

Review comment:
       I don't think we should be making changes to a blog post's contents. It looks like you've made changes to a lot of blog posts to remove leading whitespace in code snippets.
   
   Are these changes something you did while you were experimenting? Can they be reverted?

##########
File path: website/www/site/content/en/blog/adding-data-sources-to-sql.md
##########
@@ -81,19 +81,19 @@ The `TableProvider` classes are under
 
 Our table provider looks like this:
 
-{{< highlight java >}}
+{{< highlight language="java" >}}
 @AutoService(TableProvider.class)
 public class GenerateSequenceTableProvider extends InMemoryMetaTableProvider {
 
-  @Override
-  public String getTableType() {
-    return "sequence";
-  }
+@Override
+public String getTableType() {
+return "sequence";
+}
 
-  @Override
-  public BeamSqlTable buildBeamSqlTable(Table table) {
-    return new GenerateSequenceTable(table);
-  }
+@Override
+public BeamSqlTable buildBeamSqlTable(Table table) {
+return new GenerateSequenceTable(table);
+}

Review comment:
       Can we just set up the website to use the new code snippet widget with ```? Unless we add some explicit check to forbid ```, people will continue to use that syntax since it's very common markdown syntax.

##########
File path: website/www/site/content/en/blog/adding-data-sources-to-sql.md
##########
@@ -81,19 +81,19 @@ The `TableProvider` classes are under
 
 Our table provider looks like this:
 
-{{< highlight java >}}
+{{< highlight language="java" >}}
 @AutoService(TableProvider.class)
 public class GenerateSequenceTableProvider extends InMemoryMetaTableProvider {
 
-  @Override
-  public String getTableType() {
-    return "sequence";
-  }
+@Override
+public String getTableType() {
+return "sequence";
+}
 
-  @Override
-  public BeamSqlTable buildBeamSqlTable(Table table) {
-    return new GenerateSequenceTable(table);
-  }
+@Override
+public BeamSqlTable buildBeamSqlTable(Table table) {
+return new GenerateSequenceTable(table);
+}

Review comment:
       Can we just set up the website to use the new code snippet widget with \```? Unless we add some explicit check to forbid ```, people will continue to use that syntax since it's very common markdown syntax.

##########
File path: website/www/site/data/en/ways_of_contribution.yaml
##########
@@ -0,0 +1,21 @@
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+- title: Beam Technical committers
+  body: Short description with hyperlinks.
+  icon: icons/contributor/become a committer/code-icon.svg
+- title: Non-technical committers
+  body: Short description with hyperlinks.
+  icon: icons/contributor/become a committer/file-icon.svg
+- title: Website maintainers
+  body: Short description with hyperlinks.
+  icon: icons/contributor/become a committer/tool-icon.svg

Review comment:
       Still need some copy here

##########
File path: website/www/site/layouts/shortcodes/highlight.html
##########
@@ -12,20 +12,36 @@
 
 {{ $content := (trim .Inner "\n\r") | htmlUnescape | safeHTML }}
 {{ $ctx := . }}
-{{ with (.Get "class") }}
-    <div class={{ . }}>
-        {{ with ($ctx.Get "lang") }}
+{{ $py := .Get "py" }}
+{{ with (.Get "language") }}
+    <div class='{{ printf "language-%s" . }} snippet'>
+        <div class="notebook-skip code-snippet">
+            {{ with $py }}
+                <a target="_blank" type="button" data-bs-toggle="tooltip" data-bs-placement="bottom" title="Run code" href="https://colab.research.google.com/github/{{ $ctx.Site.Params.branch_repo }}/{{ $ctx.Get `notebook` }}-py.ipynb">
+                    <img src="/images/run-icon.svg"/>
+                </a>
+                <a target="_blank" type="button" data-bs-toggle="tooltip" data-bs-placement="bottom" title="View source code" href="https://github.com/{{ $ctx.Site.Params.branch_repo }}/{{ $ctx.Get `py` }}">
+                    <img src="/images/code-icon.svg"/>
+                </a>
+                <a class="copy" type="button" data-bs-toggle="tooltip" data-bs-placement="bottom" title="Copy to clipboard">
+                    <img src="/images/copy-icon.svg"/>
+                </a>
+            {{ else }}
+                <a class="copy" type="button" data-bs-toggle="tooltip" data-bs-placement="bottom" title="Copy to clipboard">
+                    <img src="/images/copy-icon.svg"/>
+                </a>
+            {{ end }}
             {{ highlight $content . "" }}
-        {{ else }}
-            {{ highlight $content "" "" }}
-        {{ end }}
+        </div>
     </div>
 {{ else }}
-    {{ with (.Get 0) }}
-        <div class={{ printf "language-%s" . }}>
-            {{ highlight $content . "" }}
+    <div class="snippet">
+        <div class="notebook-skip code-snippet without_switcher">
+            <a class="copy" type="button" data-bs-toggle="tooltip" data-bs-placement="bottom" title="Copy to clipboard">
+                <img src="/images/copy-icon.svg"/>
+            </a>
+            {{ highlight $content "" "" }}
         </div>
-    {{ else }}
-        {{ highlight $content "" "" }}
-    {{ end }}
+    </div>

Review comment:
       There are a few odd things about the way this code snippet template renders for me:
   ![image](https://user-images.githubusercontent.com/675055/106643897-34e99380-653f-11eb-8bf1-dc2bb77b6fe1.png)
   
   - There's an extra horizaontal line at the top of the snippet that extends off to the right
   - It looks like there's a 1px gap between the tabs and the top of the snippet, which looks weird to me
   - There's a lot of empty space before the first line of code (and to a lesser extent, after the last line of code), I think this looks pretty clunky, especially for snippets that have just one line.

##########
File path: website/www/site/layouts/shortcodes/highlight.html
##########
@@ -12,20 +12,36 @@
 
 {{ $content := (trim .Inner "\n\r") | htmlUnescape | safeHTML }}
 {{ $ctx := . }}
-{{ with (.Get "class") }}
-    <div class={{ . }}>
-        {{ with ($ctx.Get "lang") }}
+{{ $py := .Get "py" }}
+{{ with (.Get "language") }}
+    <div class='{{ printf "language-%s" . }} snippet'>
+        <div class="notebook-skip code-snippet">
+            {{ with $py }}
+                <a target="_blank" type="button" data-bs-toggle="tooltip" data-bs-placement="bottom" title="Run code" href="https://colab.research.google.com/github/{{ $ctx.Site.Params.branch_repo }}/{{ $ctx.Get `notebook` }}-py.ipynb">
+                    <img src="/images/run-icon.svg"/>
+                </a>
+                <a target="_blank" type="button" data-bs-toggle="tooltip" data-bs-placement="bottom" title="View source code" href="https://github.com/{{ $ctx.Site.Params.branch_repo }}/{{ $ctx.Get `py` }}">
+                    <img src="/images/code-icon.svg"/>
+                </a>
+                <a class="copy" type="button" data-bs-toggle="tooltip" data-bs-placement="bottom" title="Copy to clipboard">
+                    <img src="/images/copy-icon.svg"/>
+                </a>
+            {{ else }}
+                <a class="copy" type="button" data-bs-toggle="tooltip" data-bs-placement="bottom" title="Copy to clipboard">
+                    <img src="/images/copy-icon.svg"/>
+                </a>
+            {{ end }}
             {{ highlight $content . "" }}
-        {{ else }}
-            {{ highlight $content "" "" }}
-        {{ end }}
+        </div>
     </div>
 {{ else }}
-    {{ with (.Get 0) }}
-        <div class={{ printf "language-%s" . }}>
-            {{ highlight $content . "" }}
+    <div class="snippet">
+        <div class="notebook-skip code-snippet without_switcher">
+            <a class="copy" type="button" data-bs-toggle="tooltip" data-bs-placement="bottom" title="Copy to clipboard">
+                <img src="/images/copy-icon.svg"/>
+            </a>
+            {{ highlight $content "" "" }}
         </div>
-    {{ else }}
-        {{ highlight $content "" "" }}
-    {{ end }}
+    </div>

Review comment:
       I'd say the only one of these that's a blocker is the horizontal line extending off to the right.




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] TheNeuralBit commented on a change in pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
TheNeuralBit commented on a change in pull request #13565:
URL: https://github.com/apache/beam/pull/13565#discussion_r571037754



##########
File path: website/www/site/data/en/committer_traits.yaml
##########
@@ -0,0 +1,21 @@
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+- body: { text: To learn more see the ASF documentation., link: https://www.apache.org/foundation/policies/conduct.html }
+  bolded: Knows, upholds, and reinforces the Apache Software Foundation code of conduct.
+  icon: icons/contributor/become a committer/messages-icon.svg
+- body: { text: To learn more see the ASF documentation., link: https://infra.apache.org/committers.html#committer-responsibilities }
+  bolded: Knows, upholds, and reinforces the responsibilities of an Apache Software Foundation committer.
+  icon: icons/contributor/become a committer/beam-logo-icon.svg
+- body: { text: To learn more see our best practices!, link: https://beam.apache.org/contribute/become-a-committer/ }

Review comment:
       ```suggestion
   - body: { text: To learn more see our best practices!, link: https://beam.apache.org/contribute/attributes/ }
   ```




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] Jakub-Sadowski commented on a change in pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
Jakub-Sadowski commented on a change in pull request #13565:
URL: https://github.com/apache/beam/pull/13565#discussion_r570482067



##########
File path: website/www/site/content/en/contribute/_index.md
##########
@@ -21,55 +24,61 @@ See the License for the specific language governing permissions and
 limitations under the License.
 -->
 
-# Apache Beam Contribution Guide
+# Contribution guide
+
+<a class="arrow-list-header" data-toggle="collapse" href="#collapseOverview" role="button" aria-expanded="false"        aria-controls="collapseOverview">
+   {{< figure src="/images/arrow-icon_list.svg">}}
+
+## Overview
+
+</a>
+
+<div class="collapse dont-collapse-sm" id="collapseOverview">
 
-The Apache Beam community welcomes contributions from anyone!
+There are lots of opportunities to contribute. You can for example:
 
-If you have questions, please [reach out to the Beam community](/contribute/get-help).
+* ask or answer questions on [user@beam.apache.org](/community/contact-us/) or
+  [stackoverflow](https://stackoverflow.com/questions/tagged/apache-beam)
+* review proposed design ideas on [dev@beam.apache.org](/community/contact-us/)
+* file [bug reports](https://issues.apache.org/jira/projects/BEAM/issues)
+* review [changes](https://github.com/apache/beam/pulls)
+* work on the core programming model (what is a Beam pipeline and how does it
+  run?)
+* improve the developer experience (for example, Windows guides)
+* organize local meetups of users or contributors to Apache Beam
 
-There are lots of opportunities to contribute:
+...and many more. Most importantly, if you have an idea of how to contribute, then do it!

Review comment:
       hmm weird okay, I will try again, and if without success then I will simply remove it
   




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] Jakub-Sadowski commented on a change in pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
Jakub-Sadowski commented on a change in pull request #13565:
URL: https://github.com/apache/beam/pull/13565#discussion_r569733583



##########
File path: website/www/site/content/en/contribute/ptransform-style-guide.md
##########
@@ -230,76 +234,76 @@ E.g. if you want to return a `PCollection<Foo>` and a `PCollection<Bar>`, expose
 
 For example:
 
-{{< highlight java >}}
+{{< highlight language="java" >}}
 public class MyTransform extends PTransform<..., PCollectionTuple> {
-  private final TupleTag<Moo> mooTag = new TupleTag<Moo>() {};
-  private final TupleTag<Blah> blahTag = new TupleTag<Blah>() {};
-  ...
-  PCollectionTuple expand(... input) {
-    ...
-    PCollection<Moo> moo = ...;
-    PCollection<Blah> blah = ...;
-    return PCollectionTuple.of(mooTag, moo)
-                           .and(blahTag, blah);
-  }
+private final TupleTag<Moo> mooTag = new TupleTag<Moo>() {};
+private final TupleTag<Blah> blahTag = new TupleTag<Blah>() {};
+...
+PCollectionTuple expand(... input) {
+...
+PCollection<Moo> moo = ...;
+PCollection<Blah> blah = ...;
+return PCollectionTuple.of(mooTag, moo)
+.and(blahTag, blah);
+}
 
-  public TupleTag<Moo> getMooTag() {
-    return mooTag;
-  }
+public TupleTag<Moo> getMooTag() {
+return mooTag;
+}
 
-  public TupleTag<Blah> getBlahTag() {
-    return blahTag;
-  }
-  ...

Review comment:
       Yes, you are right, I changed only blog and documentation folders, so now I will manually change the rest as u suggested below




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] TheNeuralBit commented on a change in pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
TheNeuralBit commented on a change in pull request #13565:
URL: https://github.com/apache/beam/pull/13565#discussion_r570413800



##########
File path: website/www/site/content/en/blog/beam-2.22.0.md
##########
@@ -18,7 +18,7 @@ See the License for the specific language governing permissions and
 limitations under the License.
 -->
 We are happy to present the new 2.22.0 release of Beam. This release includes both improvements and new functionality.
-See the [download page](/get-started/downloads/#2220-2020-06-08) for this release.<!--more-->
+See the [download page](/get-started/downloads/#2220-2020-06-08) for this release.

Review comment:
       It looks like you have restored all the blog posts (except for a weird whitespace change in the 2.13.0 post). But there's still a lot of other files that have recent changes backed out. See contribute/release-guide.md, dsls/sql/overview.md, documentation/io/built-in/google-bigquery.md, documentation/io/built-in/snowflake.md, documentation/programming-guide.md, get-started/downloads.md, get-started/quickstart-java.md, and others (this list isn't exhaustive)




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] TheNeuralBit commented on a change in pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
TheNeuralBit commented on a change in pull request #13565:
URL: https://github.com/apache/beam/pull/13565#discussion_r570325695



##########
File path: website/www/site/content/en/contribute/_index.md
##########
@@ -21,55 +24,61 @@ See the License for the specific language governing permissions and
 limitations under the License.
 -->
 
-# Apache Beam Contribution Guide
+# Contribution guide
+
+<a class="arrow-list-header" data-toggle="collapse" href="#collapseOverview" role="button" aria-expanded="false"        aria-controls="collapseOverview">
+   {{< figure src="/images/arrow-icon_list.svg">}}

Review comment:
       Can you confirm that these expand buttons are working as intended? The behavior seems odd to me.
   On desktop: 
   - [ ] Content is always expanded, no arrow shows up. This could be intentional, but also ...
   - [x] The headings look like links, and when I hover the underline goes away, but its not actually clickable.
   
   On mobile:
   - [ ] The contributing code section only collapses to down to "To install these in a debian-based distribution"
   - [ ] Clicking the arrows to expand has no effect

##########
File path: website/www/site/content/en/contribute/_index.md
##########
@@ -21,55 +24,61 @@ See the License for the specific language governing permissions and
 limitations under the License.
 -->
 
-# Apache Beam Contribution Guide
+# Contribution guide
+
+<a class="arrow-list-header" data-toggle="collapse" href="#collapseOverview" role="button" aria-expanded="false"        aria-controls="collapseOverview">
+   {{< figure src="/images/arrow-icon_list.svg">}}

Review comment:
       Can you confirm that these expand buttons are working as intended? The behavior seems odd to me.
   On desktop: 
   - [x] Content is always expanded, no arrow shows up. This could be intentional, but also ...
   - [x] The headings look like links, and when I hover the underline goes away, but its not actually clickable.
   
   On mobile:
   - [ ] The contributing code section only collapses to down to "To install these in a debian-based distribution"
   - [ ] Clicking the arrows to expand has no effect




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] TheNeuralBit commented on a change in pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
TheNeuralBit commented on a change in pull request #13565:
URL: https://github.com/apache/beam/pull/13565#discussion_r568855028



##########
File path: website/www/site/layouts/shortcodes/highlight.html
##########
@@ -12,20 +12,36 @@
 
 {{ $content := (trim .Inner "\n\r") | htmlUnescape | safeHTML }}
 {{ $ctx := . }}
-{{ with (.Get "class") }}
-    <div class={{ . }}>
-        {{ with ($ctx.Get "lang") }}
+{{ $py := .Get "py" }}
+{{ with (.Get "language") }}
+    <div class='{{ printf "language-%s" . }} snippet'>
+        <div class="notebook-skip code-snippet">
+            {{ with $py }}
+                <a target="_blank" type="button" data-bs-toggle="tooltip" data-bs-placement="bottom" title="Run code" href="https://colab.research.google.com/github/{{ $ctx.Site.Params.branch_repo }}/{{ $ctx.Get `notebook` }}-py.ipynb">
+                    <img src="/images/run-icon.svg"/>
+                </a>
+                <a target="_blank" type="button" data-bs-toggle="tooltip" data-bs-placement="bottom" title="View source code" href="https://github.com/{{ $ctx.Site.Params.branch_repo }}/{{ $ctx.Get `py` }}">
+                    <img src="/images/code-icon.svg"/>
+                </a>
+                <a class="copy" type="button" data-bs-toggle="tooltip" data-bs-placement="bottom" title="Copy to clipboard">
+                    <img src="/images/copy-icon.svg"/>
+                </a>
+            {{ else }}
+                <a class="copy" type="button" data-bs-toggle="tooltip" data-bs-placement="bottom" title="Copy to clipboard">
+                    <img src="/images/copy-icon.svg"/>
+                </a>
+            {{ end }}
             {{ highlight $content . "" }}
-        {{ else }}
-            {{ highlight $content "" "" }}
-        {{ end }}
+        </div>
     </div>
 {{ else }}
-    {{ with (.Get 0) }}
-        <div class={{ printf "language-%s" . }}>
-            {{ highlight $content . "" }}
+    <div class="snippet">
+        <div class="notebook-skip code-snippet without_switcher">
+            <a class="copy" type="button" data-bs-toggle="tooltip" data-bs-placement="bottom" title="Copy to clipboard">
+                <img src="/images/copy-icon.svg"/>
+            </a>
+            {{ highlight $content "" "" }}
         </div>
-    {{ else }}
-        {{ highlight $content "" "" }}
-    {{ end }}
+    </div>

Review comment:
       I'd say the only one of these that's a blocker is the horizontal line extending off to the right.




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] Jakub-Sadowski commented on a change in pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
Jakub-Sadowski commented on a change in pull request #13565:
URL: https://github.com/apache/beam/pull/13565#discussion_r568415151



##########
File path: website/www/site/content/en/blog/adding-data-sources-to-sql.md
##########
@@ -81,19 +81,19 @@ The `TableProvider` classes are under
 
 Our table provider looks like this:
 
-{{< highlight java >}}
+{{< highlight language="java" >}}
 @AutoService(TableProvider.class)
 public class GenerateSequenceTableProvider extends InMemoryMetaTableProvider {
 
-  @Override
-  public String getTableType() {
-    return "sequence";
-  }
+@Override
+public String getTableType() {
+return "sequence";
+}
 
-  @Override
-  public BeamSqlTable buildBeamSqlTable(Table table) {
-    return new GenerateSequenceTable(table);
-  }
+@Override
+public BeamSqlTable buildBeamSqlTable(Table table) {
+return new GenerateSequenceTable(table);
+}

Review comment:
       Yeah, I spotted this later on and turned off the formatter.
   About ``` I changed it to `<< highlight >>`, because new code snippet has copy option and wanted to add this to every code 




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] TheNeuralBit commented on a change in pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
TheNeuralBit commented on a change in pull request #13565:
URL: https://github.com/apache/beam/pull/13565#discussion_r570419228



##########
File path: website/www/site/layouts/shortcodes/highlight.html
##########
@@ -12,20 +12,36 @@
 
 {{ $content := (trim .Inner "\n\r") | htmlUnescape | safeHTML }}
 {{ $ctx := . }}
-{{ with (.Get "class") }}
-    <div class={{ . }}>
-        {{ with ($ctx.Get "lang") }}
+{{ $py := .Get "py" }}
+{{ with (.Get "language") }}
+    <div class='{{ printf "language-%s" . }} snippet'>
+        <div class="notebook-skip code-snippet">
+            {{ with $py }}
+                <a target="_blank" type="button" data-bs-toggle="tooltip" data-bs-placement="bottom" title="Run code" href="https://colab.research.google.com/github/{{ $ctx.Site.Params.branch_repo }}/{{ $ctx.Get `notebook` }}-py.ipynb">
+                    <img src="/images/run-icon.svg"/>
+                </a>
+                <a target="_blank" type="button" data-bs-toggle="tooltip" data-bs-placement="bottom" title="View source code" href="https://github.com/{{ $ctx.Site.Params.branch_repo }}/{{ $ctx.Get `py` }}">
+                    <img src="/images/code-icon.svg"/>
+                </a>
+                <a class="copy" type="button" data-bs-toggle="tooltip" data-bs-placement="bottom" title="Copy to clipboard">
+                    <img src="/images/copy-icon.svg"/>
+                </a>
+            {{ else }}
+                <a class="copy" type="button" data-bs-toggle="tooltip" data-bs-placement="bottom" title="Copy to clipboard">
+                    <img src="/images/copy-icon.svg"/>
+                </a>
+            {{ end }}
             {{ highlight $content . "" }}
-        {{ else }}
-            {{ highlight $content "" "" }}
-        {{ end }}
+        </div>
     </div>
 {{ else }}
-    {{ with (.Get 0) }}
-        <div class={{ printf "language-%s" . }}>
-            {{ highlight $content . "" }}
+    <div class="snippet">
+        <div class="notebook-skip code-snippet without_switcher">
+            <a class="copy" type="button" data-bs-toggle="tooltip" data-bs-placement="bottom" title="Copy to clipboard">
+                <img src="/images/copy-icon.svg"/>
+            </a>
+            {{ highlight $content "" "" }}
         </div>
-    {{ else }}
-        {{ highlight $content "" "" }}
-    {{ end }}
+    </div>

Review comment:
       The last issue is resolved now, thanks




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] TheNeuralBit commented on a change in pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
TheNeuralBit commented on a change in pull request #13565:
URL: https://github.com/apache/beam/pull/13565#discussion_r556222239



##########
File path: website/www/site/content/en/contribute/_index.md
##########
@@ -58,20 +51,20 @@ detail.
 
 ### Prerequisites
 
-To contribute code, you need
+- a GitHub account
+- a Linux, macOS, or Microsoft Windows development environment with Java JDK 8 installed
+- [Docker](https://www.docker.com/) installed for some tasks including building worker containers and testing this website
+  changes locally
+- [Go](https://golang.org) 1.12 or later installed for Go SDK development
+- Python 3.6, 3.7, and 3.8. Yes, you need all four versions installed.
+
+  pip, setuptools, virtualenv, and tox installed for Python development
 
- - a GitHub account
- - a Linux, macOS, or Microsoft Windows development environment with Java JDK 8 installed
- - [Docker](https://www.docker.com/) installed for some tasks including building worker containers and testing this website
-   changes locally
- - [Go](https://golang.org) 1.12 or later installed for Go SDK development
- - Python 3.6, 3.7, and 3.8. Yes, you need all three versions installed.
-    - pip, setuptools, virtualenv, and tox installed for Python development
- - for large contributions, a signed [Individual Contributor License
-   Agreement](https://www.apache.org/licenses/icla.pdf) (ICLA) to the Apache
-   Software Foundation (ASF).
+- for large contributions, a signed [Individual Contributor License
+  Agreement](https://www.apache.org/licenses/icla.pdf) (ICLA) to the Apache
+  Software Foundation (ASF).
 
-To install these in a Debian-based distribution:

Review comment:
       I don't think we should drop this.

##########
File path: website/www/site/content/en/contribute/_index.md
##########
@@ -83,217 +76,136 @@ sudo apt-get install \
    docker-ce
 ```
 
-On some systems (like Ubuntu 20.04) these need to be installed also
-```
-pip3 install grpcio-tools mypy-protobuf
-```
+</br>
 
 You also need to [install Go](https://golang.org/doc/install).
 
+</br>
+
 Once Go is installed, install goavro:
 
+</br>
+

Review comment:
       Can you please avoid adding `</br>` tags to the content?

##########
File path: website/www/site/content/en/contribute/_index.md
##########
@@ -83,217 +76,136 @@ sudo apt-get install \
    docker-ce
 ```
 
-On some systems (like Ubuntu 20.04) these need to be installed also
-```
-pip3 install grpcio-tools mypy-protobuf
-```

Review comment:
       We shouldn't drop this either.

##########
File path: website/www/site/content/en/contribute/_index.md
##########
@@ -83,217 +76,136 @@ sudo apt-get install \
    docker-ce
 ```
 
-On some systems (like Ubuntu 20.04) these need to be installed also
-```
-pip3 install grpcio-tools mypy-protobuf
-```
+</br>
 
 You also need to [install Go](https://golang.org/doc/install).
 
+</br>
+
 Once Go is installed, install goavro:
 
+</br>
+
 ```
 $ export GOPATH=`pwd`/sdks/go/examples/.gogradle/project_gopath
 $ go get github.com/linkedin/goavro
 ```
 
-gLinux users should configure their machines for sudoless Docker.
-
-Alternatively, you can use the Docker based local development environment to wrap your clone of the Beam repo
-into a container meeting the requirements above.
-
-You can start this container using the [start-build-env.sh](https://github.com/apache/beam/blob/master/start-build-env.sh)
-script which is part of the Beam repo:
-```
-./start-build-env.sh
-```

Review comment:
       This section is missing in the new version.

##########
File path: website/www/site/content/en/contribute/_index.md
##########
@@ -83,217 +76,136 @@ sudo apt-get install \
    docker-ce
 ```
 
-On some systems (like Ubuntu 20.04) these need to be installed also
-```
-pip3 install grpcio-tools mypy-protobuf
-```
+</br>
 
 You also need to [install Go](https://golang.org/doc/install).
 
+</br>
+
 Once Go is installed, install goavro:
 
+</br>
+
 ```
 $ export GOPATH=`pwd`/sdks/go/examples/.gogradle/project_gopath
 $ go get github.com/linkedin/goavro
 ```
 
-gLinux users should configure their machines for sudoless Docker.
-
-Alternatively, you can use the Docker based local development environment to wrap your clone of the Beam repo
-into a container meeting the requirements above.
-
-You can start this container using the [start-build-env.sh](https://github.com/apache/beam/blob/master/start-build-env.sh)
-script which is part of the Beam repo:
-```
-./start-build-env.sh
-```
-
-### Connect With the Beam community
-
-1. Consider subscribing to the [dev@ mailing list](/community/contact-us/), especially
-   if you plan to make more than one change or the change will be large. All decisions happen on the
-   public dev list.
-1. (Optionally) Join the [#beam channel of the ASF slack](/community/contact-us/).
-1. Create an account on [Beam issue tracker (JIRA)](https://issues.apache.org/jira/projects/BEAM/issues)
-   (anyone can do this).
-
-### Share your intent
-
-1. Find or create an issue in the [Beam issue tracker (JIRA)](https://issues.apache.org/jira/projects/BEAM/issues).
-   Tracking your work in an issue will avoid duplicated or conflicting work, and provide
-   a place for notes. Later, your pull request will be linked to the issue as well.
-1. If you want to get involved but don't have a project in mind, check our list of open starter tasks,
-   [https://s.apache.org/beam-starter-tasks](https://s.apache.org/beam-starter-tasks).
-1. Assign the issue to yourself. To get the permission to do so, email
-   the [dev@ mailing list](/community/contact-us)
-   to introduce yourself and to be added as a contributor in the Beam issue tracker including your
-   ASF Jira Username. For example [this welcome email](
-   https://lists.apache.org/thread.html/e6018c2aaf7dc7895091434295e5b0fafe192b975e3e3761fcf0cda7@%3Cdev.beam.apache.org%3E).
-1. If your change is large or it is your first change, it is a good idea to
-   [discuss it on the dev@ mailing list](/community/contact-us/).
-1. For large changes create a design doc
-   ([template](https://s.apache.org/beam-design-doc-template),
-   [examples](https://s.apache.org/beam-design-docs)) and email it to the [dev@ mailing list](/community/contact-us).
-
-### Development Setup
-
-1. If you need help with git forking, cloning, branching, committing, pull requests, and squashing commits, see
-   [Git workflow tips](https://cwiki.apache.org/confluence/display/BEAM/Git+Tips)
-1. Familiarize yourself with gradle and the project structure. At the root of the git repository, run:
-
-       $ ./gradlew projects
-
-   Examine the available tasks in a project. For the default set of tasks, use:
-
-       $ ./gradlew tasks
-
-   For a given module, use:
-
-       $ ./gradlew -p sdks/java/io/cassandra tasks
-
-    For an exhaustive list of tasks, use:
-
-       $ ./gradlew tasks --all
-
-1. Make sure you can build and run tests
-
-    Run the entire set of tests with:
+</br>
 
-       $ ./gradlew check
+Linux users should configure their machines for sudoless Docker.
 
-   You can limit testing to a particular module. Gradle will build just the necessary things to run those tests. For example:
+</div>
 
-       $ ./gradlew -p sdks/go check
-       $ ./gradlew -p sdks/java/io/cassandra check
-       $ ./gradlew -p runners/flink check
+<div class="arrow-lists-mobile">
 
-1. Now you may want to set up your preferred IDE and other aspects of your development
-   environment. See the Developers' wiki for tips, guides, and FAQs on:
-   - [IntelliJ](https://cwiki.apache.org/confluence/display/BEAM/Using+IntelliJ+IDE)
-   - [Java](https://cwiki.apache.org/confluence/display/BEAM/Java+Tips)
-   - [Python](https://cwiki.apache.org/confluence/display/BEAM/Python+Tips)
-   - [Go](https://cwiki.apache.org/confluence/display/BEAM/Go+Tips)
-   - [Website](https://cwiki.apache.org/confluence/display/BEAM/Website+Tips)
-   - [Gradle](https://cwiki.apache.org/confluence/display/BEAM/Gradle+Tips)
-   - [Jenkins](https://cwiki.apache.org/confluence/display/BEAM/Jenkins+Tips)
-   - [FAQ](https://cwiki.apache.org/confluence/display/BEAM/Contributor+FAQ)
+ <a class="arrow-list-header" data-toggle="collapse" href="#collapseOverview" role="button" aria-expanded="false" aria-controls="collapseOverview">
+  {{< figure src="/images/arrow-icon_list.svg">}}
 
-### Make your change
+Overview
 
-1. Make your code change. Every source file needs to include the Apache license header. Every new dependency needs to
-   have an open source license [compatible](https://www.apache.org/legal/resolved.html#criteria) with Apache.
+  </a>
 
-1. Add unit tests for your change.
+<div class="collapse" id="collapseOverview">
 
-1. Use descriptive commit messages that make it easy to identify changes and provide a clear history.
+There are lots of opportunities to contribute. You can for example:
 
-1. When your change is ready to be reviewed and merged, create a pull request.
+- ask or answer questions on [user@beam.apache.org](/community/contact-us/) or
+  [stackoverflow](https://stackoverflow.com/questions/tagged/apache-beam)
+- review proposed design ideas on [dev@beam.apache.org](/community/contact-us/)
+- file [bug reports](https://issues.apache.org/jira/projects/BEAM/issues)
+- review [changes](https://github.com/apache/beam/pulls)
+- work on the core programming model (what is a Beam pipeline and how does it
+  run?)
+- improve the developer experience (for example, Windows guides)
+- organize local meetups of users or contributors to Apache Beam
 
-1. Format commit messages and the pull request title like `[BEAM-XXX] Fixes bug in ApproximateQuantiles`,
-   where you replace BEAM-XXX with the appropriate JIRA issue.
-   This will automatically link the pull request to the issue.
+...and many more. Most importantly, if you have an idea of how to contribute, then do it!
 
-1. The pull request and any changes pushed to it will trigger [pre-commit
-   jobs](https://cwiki.apache.org/confluence/display/BEAM/Contribution+Testing+Guide#ContributionTestingGuide-Pre-commit). If a test fails and appears unrelated to your
-   change, you can cause tests to be re-run by adding a single line comment on your
-   PR
+</div>
 
-        retest this please
+<a class="arrow-list-header" data-toggle="collapse" href="#collapseContributing" role="button" aria-expanded="false" aria-controls="collapseContributing">
+   {{< figure src="/images/arrow-icon_list.svg">}}
 
-   Pull request template has a link to a [catalog of trigger phrases](https://github.com/apache/beam/blob/master/.test-infra/jenkins/README.md)
-   that start various post-commit tests suites. Use these sparingly because post-commit tests consume shared development resources.
+Contributing code
 
-1. Pull requests can only be merged by a
-   [Beam committer](https://home.apache.org/phonebook.html?pmc=beam).
-   To find a committer for your area, either:
-    - look in the OWNERS file of the directory where you changed files, or
-    - look for similar code merges, or
-    - ask on [dev@beam.apache.org](/community/contact-us/)
+  </a>
 
-   Use `R: @username` in the pull request to notify a reviewer.
+<div class="collapse" id="collapseContributing">
 
-1. If you don't get any response in 3 business days, email the [dev@ mailing list](/community/contact-us) to ask for someone to look at your pull
-   request.
-
-### Make the reviewer's job easier
-
-1. Provide context for your changes in the associated JIRA issue and/or PR description.
-
-1. Avoid huge mega-changes.
-
-1. Review feedback typically leads to follow-up changes. It is easier to review follow-up changes when they are added as additional "fixup" commits to the
-   existing PR/branch. This allows reviewer(s) to track the incremental progress and focus on new changes,
-   and keeps comment threads attached to the code.
-   Please refrain from squashing new commits into reviewed commits before review is completed.
-   Because squashing reviewed and unreviewed commits often makes it harder to
-   see the the difference between the review iterations, reviewers may ask you to unsquash new changes.
-
-1. After review is complete and the PR is accepted, fixup commits should be squashed (see [Git workflow tips](https://cwiki.apache.org/confluence/display/BEAM/Git+Tips)).
-   Beam committers [can squash](https://beam.apache.org/contribute/committer-guide/#merging-it)
-   all commits in the PR during merge, however if a PR has a mixture of independent changes that should not be squashed, and fixup commits,
-   then the PR author should help squashing fixup commits to maintain a clean commmit history.
-
-## When will my change show up in an Apache Beam release?
-
-Apache Beam makes minor releases every 6 weeks. Apache Beam has a
-[calendar](https://calendar.google.com/calendar/embed?src=0p73sl034k80oob7seouanigd0%40group.calendar.google.com) for
-cutting the next release branch. Your change needs to be checked into master before the release branch is cut
-to make the next release.
-
-## Stale pull requests
+Below is a tutorial for contributing code to Beam, covering our tools and typical process in
+detail.
 
-The community will close stale pull requests in order to keep the project
-healthy. A pull request becomes stale after its author fails to respond to
-actionable comments for 60 days.  Author of a closed pull request is welcome to
-reopen the same pull request again in the future. The associated JIRAs will be
-unassigned from the author but will stay open.
+- a GitHub account
+- a Linux, macOS, or Microsoft Windows development environment with Java JDK 8 installed
+- [Docker](https://www.docker.com/) installed for some tasks including building worker containers and testing this website
+  changes locally
+- [Go](https://golang.org) 1.12 or later installed for Go SDK development
+- Python 3.6, 3.7, and 3.8. Yes, you need all four versions installed.
 
-## Accounts and Permissions
+  pip, setuptools, virtualenv, and tox installed for Python development
 
-- [Beam issue tracker (JIRA)](https://issues.apache.org/jira/projects/BEAM/issues):
-  Anyone can access it and browse issues. Anyone can register an account and login
-  to create issues or add comments. Only contributors can be assigned issues. If
-  you want to be assigned issues, a PMC member can add you to the project contributor
-  group.  Email the [dev@ mailing list](/community/contact-us)
-  to ask to be added as a contributor in the Beam issue tracker, and include your ASF Jira username.
+- for large contributions, a signed [Individual Contributor License
+  Agreement](https://www.apache.org/licenses/icla.pdf) (ICLA) to the Apache
+  Software Foundation (ASF).
 
-- [Beam Wiki Space](https://cwiki.apache.org/confluence/display/BEAM/Apache+Beam):
-  Anyone has read access. If you wish to contribute changes, please create an account and request edit access on the
-  [dev@ mailing list](/community/contact-us) (include your Wiki account user ID).
+</div>
 
-- Pull requests can only be merged by a
-  [Beam committer](https://home.apache.org/phonebook.html?pmc=beam).
+</br>
 
-- [Voting on a release](https://www.apache.org/foundation/voting.html): Everyone can vote. Only
-  [Beam PMC](https://home.apache.org/phonebook.html?pmc=beam) members should mark their votes as binding.
+```
+sudo apt-get install \
+   openjdk-8-jdk \
+   python-setuptools \
+   python-pip \
+   virtualenv \
+   tox \
+   docker-ce
+```
 
-## Communication
+</br>
 
-All communication is expected to align with the [Code of Conduct](https://www.apache.org/foundation/policies/conduct).
+You also need to [install Go](https://golang.org/doc/install).
 
-Discussion about contributing code to Beam happens on the [dev@ mailing list](/community/contact-us/). Introduce yourself!
+</br>
 
-Questions can be asked on the [#beam channel of the ASF slack](/community/contact-us/). Introduce yourself!
+Once Go is installed, install goavro:
 
-## Additional resources
+</br>
 
-If you are contributing a `PTransform` to Beam, we have an extensive
-[PTransform Style Guide](/contribute/ptransform-style-guide).
+```
+$ export GOPATH=`pwd`/sdks/go/examples/.gogradle/project_gopath
+$ go get github.com/linkedin/goavro
+```
 
-If you are contributing a Runner to Beam, refer to the
-[Runner authoring guide](/contribute/runner-guide/)
+</br>
 
-Review [design documents](https://s.apache.org/beam-design-docs).
+Linux users should configure their machines for sudoless Docker.
 
-A great way to contribute is to join an existing effort. For the most
-intensive efforts, check out the [roadmap](/roadmap/).
+</div>

Review comment:
       It looks like this information is in two places, is that intentional?




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] Jakub-Sadowski commented on a change in pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
Jakub-Sadowski commented on a change in pull request #13565:
URL: https://github.com/apache/beam/pull/13565#discussion_r570094880



##########
File path: website/www/site/content/en/documentation/io/developing-io-java.md
##########
@@ -17,9 +17,6 @@ limitations under the License.
 -->
 # Developing I/O connectors for Java
 
-**IMPORTANT:** Use ``Splittable DoFn`` to develop your new I/O. For more details, read the
-[new I/O connector overview](/documentation/io/developing-io-overview/).

Review comment:
       okay I will just take contents from website-revamp branch




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] TheNeuralBit commented on a change in pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
TheNeuralBit commented on a change in pull request #13565:
URL: https://github.com/apache/beam/pull/13565#discussion_r569642188



##########
File path: website/www/site/content/en/contribute/practises.md
##########
@@ -0,0 +1,66 @@
+---
+title: "Beam community’s practises"
+layout: "arrow_template"
+---
+
+<!--
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+-->
+
+# Beam community’s practises
+
+{{< figure src="/images/community/messages-icon.svg" >}}
+
+## Knows, upholds, and reinforces the Beam community’s practices
+
+- They have a proven commitment to the project
+- They share their intentions with the community
+- They accept and integrate community feedback in their plans, designs, code, etc.
+- They earnestly try to make Beam better with their contributions
+
+In particular, if a code contributor:
+
+- They earnestly try to make Beam better with their own code
+- They earnestly try to make Beam better with code review
+- They accept and integrate feedback on their code
+- They know, follow, and enforce Beam’s practices while reviewing/merging code - style, documentation, testing, backward compatibility, etc.
+
+{{< figure src="/images/community/beam-logo-icon.svg" >}}
+
+## Knows, upholds, and reinforces the Apache Software Foundation code of conduct
+
+In particular, we manifestly strive to:
+
+- Be open
+- Be empathetic
+- Be welcoming
+- Be friendly
+- Be patient
+- Be collaborative
+- Be inquisitive
+- Be careful in the words that they choose
+
+[To learn more see the ASF documentation.](https://httpd.apache.org/docs/)
+
+{{< figure src="/images/community/diamond-icon.svg" >}}
+
+## Knows, upholds, and reinforces the responsibilities of an Apache Software Foundation committer
+
+- They help create a product that will outlive the interest of any particular volunteer (including themselves)
+- They grow and maintain the health of the Apache community
+- They help out with surrounding work, such as the website & documentation
+- They help users
+- They can be trusted to decide when code is ready for release, or when to ask someone else to make the judgment
+- They can be trusted to decide when to merge code (if a code contributor) or when to ask someone else to make the judgment
+
+[To learn more see the ASF documentation.](https://httpd.apache.org/docs/)

Review comment:
       Oh I see this came from https://beam.apache.org/contribute/become-a-committer/#an-apache-beam-committer
   
   I'm not sure the name "Beam community practices" is appropriate here, part of it is about community practices, but the entire page is about the qualities of a committer.  Maybe it should be called "Qualities of a Beam Committer" or something. I'll reach out to @griscz about this.
   
   




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] TheNeuralBit commented on a change in pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
TheNeuralBit commented on a change in pull request #13565:
URL: https://github.com/apache/beam/pull/13565#discussion_r570538516



##########
File path: website/www/site/static/js/copy-to-clipboard.js
##########
@@ -0,0 +1,42 @@
+// Licensed under the Apache License, Version 2.0 (the 'License'); you may not
+// use this file except in compliance with the License. You may obtain a copy of
+// the License at
+//
+//   http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an 'AS IS' BASIS, WITHOUT
+// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+// License for the specific language governing permissions and limitations under
+// the License.
+
+$(document).ready(function() {
+    function copy() {
+        $(".copy").click(function(){
+            var text=$(this).siblings()[$(this).siblings().length-1].childNodes[0].innerHTML;
+            const el=document.createElement('textarea');
+            el.value=text;document.body.appendChild(el);
+            el.select();document.execCommand('copy');
+            document.body.removeChild(el);
+            alert('copied to clipboard');
+        })
+        $(".just-copy").click(function(){
+            var text=$(this).parent().siblings()[0].innerHTML;
+            const el=document.createElement('textarea');
+            el.value=text;document.body.appendChild(el);
+            el.select();document.execCommand('copy');
+            document.body.removeChild(el);
+            alert('copied to clipboard');

Review comment:
       Ok let's just file a jira for now




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] Jakub-Sadowski commented on a change in pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
Jakub-Sadowski commented on a change in pull request #13565:
URL: https://github.com/apache/beam/pull/13565#discussion_r570094191



##########
File path: website/www/site/layouts/shortcodes/highlight.html
##########
@@ -12,20 +12,36 @@
 
 {{ $content := (trim .Inner "\n\r") | htmlUnescape | safeHTML }}
 {{ $ctx := . }}
-{{ with (.Get "class") }}
-    <div class={{ . }}>
-        {{ with ($ctx.Get "lang") }}
+{{ $py := .Get "py" }}
+{{ with (.Get "language") }}
+    <div class='{{ printf "language-%s" . }} snippet'>
+        <div class="notebook-skip code-snippet">
+            {{ with $py }}
+                <a target="_blank" type="button" data-bs-toggle="tooltip" data-bs-placement="bottom" title="Run code" href="https://colab.research.google.com/github/{{ $ctx.Site.Params.branch_repo }}/{{ $ctx.Get `notebook` }}-py.ipynb">
+                    <img src="/images/run-icon.svg"/>
+                </a>
+                <a target="_blank" type="button" data-bs-toggle="tooltip" data-bs-placement="bottom" title="View source code" href="https://github.com/{{ $ctx.Site.Params.branch_repo }}/{{ $ctx.Get `py` }}">
+                    <img src="/images/code-icon.svg"/>
+                </a>
+                <a class="copy" type="button" data-bs-toggle="tooltip" data-bs-placement="bottom" title="Copy to clipboard">
+                    <img src="/images/copy-icon.svg"/>
+                </a>
+            {{ else }}
+                <a class="copy" type="button" data-bs-toggle="tooltip" data-bs-placement="bottom" title="Copy to clipboard">
+                    <img src="/images/copy-icon.svg"/>
+                </a>
+            {{ end }}
             {{ highlight $content . "" }}
-        {{ else }}
-            {{ highlight $content "" "" }}
-        {{ end }}
+        </div>
     </div>
 {{ else }}
-    {{ with (.Get 0) }}
-        <div class={{ printf "language-%s" . }}>
-            {{ highlight $content . "" }}
+    <div class="snippet">
+        <div class="notebook-skip code-snippet without_switcher">
+            <a class="copy" type="button" data-bs-toggle="tooltip" data-bs-placement="bottom" title="Copy to clipboard">
+                <img src="/images/copy-icon.svg"/>
+            </a>
+            {{ highlight $content "" "" }}
         </div>
-    {{ else }}
-        {{ highlight $content "" "" }}
-    {{ end }}
+    </div>

Review comment:
       Yes, ur right, I will modify it accordingly




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] TheNeuralBit commented on a change in pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
TheNeuralBit commented on a change in pull request #13565:
URL: https://github.com/apache/beam/pull/13565#discussion_r571039307



##########
File path: website/www/site/content/en/contribute/_index.md
##########
@@ -21,55 +24,61 @@ See the License for the specific language governing permissions and
 limitations under the License.
 -->
 
-# Apache Beam Contribution Guide
+# Contribution guide
+
+<a class="arrow-list-header" data-toggle="collapse" href="#collapseOverview" role="button" aria-expanded="false"        aria-controls="collapseOverview">
+   {{< figure src="/images/arrow-icon_list.svg">}}

Review comment:
       Thank you




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] TheNeuralBit commented on a change in pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
TheNeuralBit commented on a change in pull request #13565:
URL: https://github.com/apache/beam/pull/13565#discussion_r570542870



##########
File path: website/www/site/content/en/contribute/_index.md
##########
@@ -21,55 +24,61 @@ See the License for the specific language governing permissions and
 limitations under the License.
 -->
 
-# Apache Beam Contribution Guide
+# Contribution guide
+
+<a class="arrow-list-header" data-toggle="collapse" href="#collapseOverview" role="button" aria-expanded="false"        aria-controls="collapseOverview">
+   {{< figure src="/images/arrow-icon_list.svg">}}

Review comment:
       Ok the dropdowns seem to be working now. But the second one still only collapses down to "To install these in a debian-based distribution", which doesn't seem correct. That's still part of the Contributing Code section




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] Jakub-Sadowski commented on pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
Jakub-Sadowski commented on pull request #13565:
URL: https://github.com/apache/beam/pull/13565#issuecomment-746160028


   Review: @TheNeuralBit


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] TheNeuralBit commented on a change in pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
TheNeuralBit commented on a change in pull request #13565:
URL: https://github.com/apache/beam/pull/13565#discussion_r570398321



##########
File path: website/www/site/content/en/contribute/_index.md
##########
@@ -21,55 +24,61 @@ See the License for the specific language governing permissions and
 limitations under the License.
 -->
 
-# Apache Beam Contribution Guide
+# Contribution guide
+
+<a class="arrow-list-header" data-toggle="collapse" href="#collapseOverview" role="button" aria-expanded="false"        aria-controls="collapseOverview">
+   {{< figure src="/images/arrow-icon_list.svg">}}
+
+## Overview
+
+</a>
+
+<div class="collapse dont-collapse-sm" id="collapseOverview">
 
-The Apache Beam community welcomes contributions from anyone!
+There are lots of opportunities to contribute. You can for example:
 
-If you have questions, please [reach out to the Beam community](/contribute/get-help).
+* ask or answer questions on [user@beam.apache.org](/community/contact-us/) or
+  [stackoverflow](https://stackoverflow.com/questions/tagged/apache-beam)
+* review proposed design ideas on [dev@beam.apache.org](/community/contact-us/)
+* file [bug reports](https://issues.apache.org/jira/projects/BEAM/issues)
+* review [changes](https://github.com/apache/beam/pulls)
+* work on the core programming model (what is a Beam pipeline and how does it
+  run?)
+* improve the developer experience (for example, Windows guides)
+* organize local meetups of users or contributors to Apache Beam
 
-There are lots of opportunities to contribute:
+...and many more. Most importantly, if you have an idea of how to contribute, then do it!

Review comment:
       It still looks the same to me




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] TheNeuralBit commented on a change in pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
TheNeuralBit commented on a change in pull request #13565:
URL: https://github.com/apache/beam/pull/13565#discussion_r568708871



##########
File path: website/www/site/content/en/blog/adding-data-sources-to-sql.md
##########
@@ -81,19 +81,19 @@ The `TableProvider` classes are under
 
 Our table provider looks like this:
 
-{{< highlight java >}}
+{{< highlight language="java" >}}
 @AutoService(TableProvider.class)
 public class GenerateSequenceTableProvider extends InMemoryMetaTableProvider {
 
-  @Override
-  public String getTableType() {
-    return "sequence";
-  }
+@Override
+public String getTableType() {
+return "sequence";
+}
 
-  @Override
-  public BeamSqlTable buildBeamSqlTable(Table table) {
-    return new GenerateSequenceTable(table);
-  }
+@Override
+public BeamSqlTable buildBeamSqlTable(Table table) {
+return new GenerateSequenceTable(table);
+}

Review comment:
       Can we just set up the website to use the new code snippet widget with ```? Unless we add some explicit check to forbid ```, people will continue to use that syntax since it's very common markdown syntax.




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] TheNeuralBit commented on a change in pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
TheNeuralBit commented on a change in pull request #13565:
URL: https://github.com/apache/beam/pull/13565#discussion_r570456145



##########
File path: website/www/site/content/en/contribute/_index.md
##########
@@ -21,55 +24,61 @@ See the License for the specific language governing permissions and
 limitations under the License.
 -->
 
-# Apache Beam Contribution Guide
+# Contribution guide
+
+<a class="arrow-list-header" data-toggle="collapse" href="#collapseOverview" role="button" aria-expanded="false"        aria-controls="collapseOverview">
+   {{< figure src="/images/arrow-icon_list.svg">}}

Review comment:
       Ok the dropdown buttons work better on desktop now. They still seem broken on mobile though, nothing happens when I click them.

##########
File path: website/www/site/static/js/copy-to-clipboard.js
##########
@@ -0,0 +1,42 @@
+// Licensed under the Apache License, Version 2.0 (the 'License'); you may not
+// use this file except in compliance with the License. You may obtain a copy of
+// the License at
+//
+//   http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an 'AS IS' BASIS, WITHOUT
+// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+// License for the specific language governing permissions and limitations under
+// the License.
+
+$(document).ready(function() {
+    function copy() {
+        $(".copy").click(function(){
+            var text=$(this).siblings()[$(this).siblings().length-1].childNodes[0].innerHTML;
+            const el=document.createElement('textarea');
+            el.value=text;document.body.appendChild(el);
+            el.select();document.execCommand('copy');
+            document.body.removeChild(el);
+            alert('copied to clipboard');
+        })
+        $(".just-copy").click(function(){
+            var text=$(this).parent().siblings()[0].innerHTML;
+            const el=document.createElement('textarea');
+            el.value=text;document.body.appendChild(el);
+            el.select();document.execCommand('copy');
+            document.body.removeChild(el);
+            alert('copied to clipboard');

Review comment:
       This alert is strange to me. It's weird to have to click "OK" after copying.
   
   Other implementations of this usually pop up a notification to let you know the content has been copied, but you don't have to acknowledge it. If it's too much to address this right now let's file a jira about it.

##########
File path: website/www/site/data/en/committer_traits.yaml
##########
@@ -0,0 +1,21 @@
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+- body: { text: To learn more see the ASF documentation., link: https://www.apache.org/foundation/policies/conduct.html }
+  bolded: Knows, upholds, and reinforces the Apache Software Foundation code of conduct.
+  icon: icons/contributor/become a committer/messages-icon.svg
+- body: { text: To learn more see the ASF documentation., link: https://infra.apache.org/committers.html#committer-responsibilities }
+  bolded: Knows, upholds, and reinforces the responsibilities of an Apache Software Foundation committer.
+  icon: icons/contributor/become a committer/beam-logo-icon.svg
+- body: { text: To learn more see our best practices!, link: https://beam.apache.org/contribute/become-a-committer/ }

Review comment:
       become-a-committer is the page that this is displayed on. I think this link should be /attributes/?
   
   This seems a little backwards again.. but that is a design question for @griscz 

##########
File path: website/www/site/content/en/contribute/_index.md
##########
@@ -21,55 +24,61 @@ See the License for the specific language governing permissions and
 limitations under the License.
 -->
 
-# Apache Beam Contribution Guide
+# Contribution guide
+
+<a class="arrow-list-header" data-toggle="collapse" href="#collapseOverview" role="button" aria-expanded="false"        aria-controls="collapseOverview">
+   {{< figure src="/images/arrow-icon_list.svg">}}
+
+## Overview
+
+</a>
+
+<div class="collapse dont-collapse-sm" id="collapseOverview">
 
-The Apache Beam community welcomes contributions from anyone!
+There are lots of opportunities to contribute. You can for example:
 
-If you have questions, please [reach out to the Beam community](/contribute/get-help).
+* ask or answer questions on [user@beam.apache.org](/community/contact-us/) or
+  [stackoverflow](https://stackoverflow.com/questions/tagged/apache-beam)
+* review proposed design ideas on [dev@beam.apache.org](/community/contact-us/)
+* file [bug reports](https://issues.apache.org/jira/projects/BEAM/issues)
+* review [changes](https://github.com/apache/beam/pulls)
+* work on the core programming model (what is a Beam pipeline and how does it
+  run?)
+* improve the developer experience (for example, Windows guides)
+* organize local meetups of users or contributors to Apache Beam
 
-There are lots of opportunities to contribute:
+...and many more. Most importantly, if you have an idea of how to contribute, then do it!

Review comment:
       This is still not rendering correctly, I think we should just remove the "... and many more" unless you know what's going wrong here.




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] TheNeuralBit commented on a change in pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
TheNeuralBit commented on a change in pull request #13565:
URL: https://github.com/apache/beam/pull/13565#discussion_r570423346



##########
File path: website/www/site/content/en/contribute/_index.md
##########
@@ -127,173 +128,9 @@ script which is part of the Beam repo:
 1. Assign the issue to yourself. To get the permission to do so, email
    the [dev@ mailing list](/community/contact-us)
    to introduce yourself and to be added as a contributor in the Beam issue tracker including your
-   ASF Jira Username. For example [this welcome email](
-   https://lists.apache.org/thread.html/e6018c2aaf7dc7895091434295e5b0fafe192b975e3e3761fcf0cda7@%3Cdev.beam.apache.org%3E).
+   ASF Jira Username. For example [this welcome email](https://lists.apache.org/thread.html/e6018c2aaf7dc7895091434295e5b0fafe192b975e3e3761fcf0cda7@%3Cdev.beam.apache.org%3E).
 1. If your change is large or it is your first change, it is a good idea to
    [discuss it on the dev@ mailing list](/community/contact-us/).
 1. For large changes create a design doc
    ([template](https://s.apache.org/beam-design-doc-template),
    [examples](https://s.apache.org/beam-design-docs)) and email it to the [dev@ mailing list](/community/contact-us).
-
-### Development Setup {#development-setup}
-
-1. If you need help with git forking, cloning, branching, committing, pull requests, and squashing commits, see
-   [Git workflow tips](https://cwiki.apache.org/confluence/display/BEAM/Git+Tips)
-1. Familiarize yourself with gradle and the project structure. At the root of the git repository, run:

Review comment:
       Filed BEAM-11751 to maybe remove it in the future




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] Jakub-Sadowski commented on a change in pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
Jakub-Sadowski commented on a change in pull request #13565:
URL: https://github.com/apache/beam/pull/13565#discussion_r569745545



##########
File path: website/www/site/content/en/contribute/practises.md
##########
@@ -0,0 +1,66 @@
+---
+title: "Beam community’s practises"
+layout: "arrow_template"
+---
+
+<!--
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+-->
+
+# Beam community’s practises
+
+{{< figure src="/images/community/messages-icon.svg" >}}
+
+## Knows, upholds, and reinforces the Beam community’s practices
+
+- They have a proven commitment to the project
+- They share their intentions with the community
+- They accept and integrate community feedback in their plans, designs, code, etc.
+- They earnestly try to make Beam better with their contributions
+
+In particular, if a code contributor:
+
+- They earnestly try to make Beam better with their own code
+- They earnestly try to make Beam better with code review
+- They accept and integrate feedback on their code
+- They know, follow, and enforce Beam’s practices while reviewing/merging code - style, documentation, testing, backward compatibility, etc.
+
+{{< figure src="/images/community/beam-logo-icon.svg" >}}
+
+## Knows, upholds, and reinforces the Apache Software Foundation code of conduct
+
+In particular, we manifestly strive to:
+
+- Be open
+- Be empathetic
+- Be welcoming
+- Be friendly
+- Be patient
+- Be collaborative
+- Be inquisitive
+- Be careful in the words that they choose
+
+[To learn more see the ASF documentation.](https://httpd.apache.org/docs/)
+
+{{< figure src="/images/community/diamond-icon.svg" >}}
+
+## Knows, upholds, and reinforces the responsibilities of an Apache Software Foundation committer
+
+- They help create a product that will outlive the interest of any particular volunteer (including themselves)
+- They grow and maintain the health of the Apache community
+- They help out with surrounding work, such as the website & documentation
+- They help users
+- They can be trusted to decide when code is ready for release, or when to ask someone else to make the judgment
+- They can be trusted to decide when to merge code (if a code contributor) or when to ask someone else to make the judgment
+
+[To learn more see the ASF documentation.](https://httpd.apache.org/docs/)

Review comment:
       done




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] TheNeuralBit commented on a change in pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
TheNeuralBit commented on a change in pull request #13565:
URL: https://github.com/apache/beam/pull/13565#discussion_r571054669



##########
File path: website/www/site/layouts/shortcodes/highlight.html
##########
@@ -12,20 +12,51 @@
 
 {{ $content := (trim .Inner "\n\r") | htmlUnescape | safeHTML }}
 {{ $ctx := . }}
-{{ with (.Get "class") }}
-    <div class={{ . }}>
-        {{ with ($ctx.Get "lang") }}
+{{ $language := .Get 0 }}
+{{ $file := .Get "file" }}
+{{ $notebook := .Get "notebook" }}
+{{ with (.Get "language") }}
+    <div class='{{ printf "language-%s" . }} snippet'>
+        <div class="notebook-skip code-snippet">
+            {{ with $file }}
+                {{ with $notebook }}
+                    <a target="_blank" type="button" data-bs-toggle="tooltip" data-bs-placement="bottom" title="Run code" href="https://colab.research.google.com/github/{{ $ctx.Site.Params.branch_repo }}/{{ $ctx.Get `notebook` }}-py.ipynb">
+                        <img src="/images/run-icon.svg"/>
+                    </a>
+                {{ end }}
+                <a target="_blank" type="button" data-bs-toggle="tooltip" data-bs-placement="bottom" title="View source code" href="https://github.com/{{ $ctx.Site.Params.branch_repo }}/{{ $ctx.Get `py` }}">

Review comment:
       ```suggestion
                   <a target="_blank" type="button" data-bs-toggle="tooltip" data-bs-placement="bottom" title="View source code" href="https://github.com/{{ $ctx.Site.Params.branch_repo }}/{{ $ctx.Get `file` }}">
   ```




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] TheNeuralBit commented on a change in pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
TheNeuralBit commented on a change in pull request #13565:
URL: https://github.com/apache/beam/pull/13565#discussion_r570479368



##########
File path: website/www/site/content/en/blog/beam-2.22.0.md
##########
@@ -18,7 +18,7 @@ See the License for the specific language governing permissions and
 limitations under the License.
 -->
 We are happy to present the new 2.22.0 release of Beam. This release includes both improvements and new functionality.
-See the [download page](/get-started/downloads/#2220-2020-06-08) for this release.<!--more-->
+See the [download page](/get-started/downloads/#2220-2020-06-08) for this release.

Review comment:
       This looks good now, thank you




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] TheNeuralBit commented on pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
TheNeuralBit commented on pull request #13565:
URL: https://github.com/apache/beam/pull/13565#issuecomment-747630640


   You can see it in the GCS staged output: http://apache-beam-website-pull-requests.storage.googleapis.com/13565/contribute/become-a-committer/index.html


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] pabloem commented on pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
pabloem commented on pull request #13565:
URL: https://github.com/apache/beam/pull/13565#issuecomment-747587188


   thank you @Jakub-Sadowski ! Can you share a few screenshots of these changes?


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] Jakub-Sadowski commented on a change in pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
Jakub-Sadowski commented on a change in pull request #13565:
URL: https://github.com/apache/beam/pull/13565#discussion_r569574382



##########
File path: website/www/site/data/en/ways_of_contribution.yaml
##########
@@ -0,0 +1,21 @@
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+- title: Beam Technical committers
+  body: Short description with hyperlinks.
+  icon: icons/contributor/become a committer/code-icon.svg
+- title: Non-technical committers
+  body: Short description with hyperlinks.
+  icon: icons/contributor/become a committer/file-icon.svg
+- title: Website maintainers
+  body: Short description with hyperlinks.
+  icon: icons/contributor/become a committer/tool-icon.svg

Review comment:
       done




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] Jakub-Sadowski commented on a change in pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
Jakub-Sadowski commented on a change in pull request #13565:
URL: https://github.com/apache/beam/pull/13565#discussion_r551369658



##########
File path: website/www/site/content/en/contribute/_index.md
##########
@@ -21,57 +22,65 @@ See the License for the specific language governing permissions and
 limitations under the License.
 -->
 
-# Apache Beam Contribution Guide
+# Contribution guide
+
+</br>
+
+<div class="arrow-lists-desktop">
+
+## Overview
 
-The Apache Beam community welcomes contributions from anyone!
+</br>
 
-If you have questions, please [reach out to the Beam community](/contribute/get-help).
+There are lots of opportunities to contribute. You can for example:
 
-There are lots of opportunities to contribute:
+<div class="arrow-list">
 
- - ask or answer questions on [user@beam.apache.org](/community/contact-us/) or
-[stackoverflow](https://stackoverflow.com/questions/tagged/apache-beam)
- - review proposed design ideas on [dev@beam.apache.org](/community/contact-us/)
- - improve the documentation
- - file [bug reports](https://issues.apache.org/jira/projects/BEAM/issues)
- - test releases
- - review [changes](https://github.com/apache/beam/pulls)
- - write new examples
- - improve your favorite language SDK (Java, Python, Go, etc)
- - improve specific runners (Apache Flink, Apache Spark, Google
-   Cloud Dataflow, etc)
- - improve or add IO connectors
- - add new transform libraries (statistics, ML, image processing, etc)
- - work on the core programming model (what is a Beam pipeline and how does it
-   run?)
- - improve the developer experience (for example, Windows guides)
- - add answers to the [contribution FAQ](
- https://cwiki.apache.org/confluence/display/BEAM/Contributor+FAQ)
- - organize local meetups of users or contributors to Apache Beam
+- ask or answer questions on [user@beam.apache.org](/community/contact-us/) or
+  [stackoverflow](https://stackoverflow.com/questions/tagged/apache-beam)
+- review proposed design ideas on [dev@beam.apache.org](/community/contact-us/)
+- file [bug reports](https://issues.apache.org/jira/projects/BEAM/issues)
+- review [changes](https://github.com/apache/beam/pulls)
+- work on the core programming model (what is a Beam pipeline and how does it
+  run?)
+- improve the developer experience (for example, Windows guides)
+- organize local meetups of users or contributors to Apache Beam
 
-Most importantly, if you have an idea of how to contribute, then do it!
+</div>
+
+...and many more. Most importantly, if you have an idea of how to contribute, then do it!
+
+</br>
 
 ## Contributing code
 
+</br>
+
 Below is a tutorial for contributing code to Beam, covering our tools and typical process in
 detail.
 
+</br>
+
 ### Prerequisites
 
-To contribute code, you need
+<div class="arrow-list">
+
+- a GitHub account
+- a Linux, macOS, or Microsoft Windows development environment with Java JDK 8 installed
+- [Docker](https://www.docker.com/) installed for some tasks including building worker containers and testing this website
+  changes locally
+- [Go](https://golang.org) 1.12 or later installed for Go SDK development
+- Python 3.6, 3.7, and 3.8. Yes, you need all four versions installed.
+
+  pip, setuptools, virtualenv, and tox installed for Python development
+
+- for large contributions, a signed [Individual Contributor License
+  Agreement](https://www.apache.org/licenses/icla.pdf) (ICLA) to the Apache
+  Software Foundation (ASF).
 
- - a GitHub account
- - a Linux, macOS, or Microsoft Windows development environment with Java JDK 8 installed
- - [Docker](https://www.docker.com/) installed for some tasks including building worker containers and testing this website
-   changes locally
- - [Go](https://golang.org) 1.12 or later installed for Go SDK development
- - Python 3.6, 3.7, and 3.8. Yes, you need all three versions installed.
-    - pip, setuptools, virtualenv, and tox installed for Python development
- - for large contributions, a signed [Individual Contributor License
-   Agreement](https://www.apache.org/licenses/icla.pdf) (ICLA) to the Apache
-   Software Foundation (ASF).
+</div>

Review comment:
       and also deleted most of `br's `, some stayed in contribute/_index.md, but this page is pretty uniq




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] TheNeuralBit commented on a change in pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
TheNeuralBit commented on a change in pull request #13565:
URL: https://github.com/apache/beam/pull/13565#discussion_r547527092



##########
File path: website/www/site/content/en/contribute/_index.md
##########
@@ -21,57 +22,65 @@ See the License for the specific language governing permissions and
 limitations under the License.
 -->
 
-# Apache Beam Contribution Guide
+# Contribution guide
+
+</br>
+
+<div class="arrow-lists-desktop">
+
+## Overview
 
-The Apache Beam community welcomes contributions from anyone!
+</br>
 
-If you have questions, please [reach out to the Beam community](/contribute/get-help).
+There are lots of opportunities to contribute. You can for example:
 
-There are lots of opportunities to contribute:
+<div class="arrow-list">
 
- - ask or answer questions on [user@beam.apache.org](/community/contact-us/) or
-[stackoverflow](https://stackoverflow.com/questions/tagged/apache-beam)
- - review proposed design ideas on [dev@beam.apache.org](/community/contact-us/)
- - improve the documentation
- - file [bug reports](https://issues.apache.org/jira/projects/BEAM/issues)
- - test releases
- - review [changes](https://github.com/apache/beam/pulls)
- - write new examples
- - improve your favorite language SDK (Java, Python, Go, etc)
- - improve specific runners (Apache Flink, Apache Spark, Google
-   Cloud Dataflow, etc)
- - improve or add IO connectors
- - add new transform libraries (statistics, ML, image processing, etc)
- - work on the core programming model (what is a Beam pipeline and how does it
-   run?)
- - improve the developer experience (for example, Windows guides)
- - add answers to the [contribution FAQ](
- https://cwiki.apache.org/confluence/display/BEAM/Contributor+FAQ)
- - organize local meetups of users or contributors to Apache Beam
+- ask or answer questions on [user@beam.apache.org](/community/contact-us/) or
+  [stackoverflow](https://stackoverflow.com/questions/tagged/apache-beam)
+- review proposed design ideas on [dev@beam.apache.org](/community/contact-us/)
+- file [bug reports](https://issues.apache.org/jira/projects/BEAM/issues)
+- review [changes](https://github.com/apache/beam/pulls)
+- work on the core programming model (what is a Beam pipeline and how does it
+  run?)
+- improve the developer experience (for example, Windows guides)
+- organize local meetups of users or contributors to Apache Beam
 
-Most importantly, if you have an idea of how to contribute, then do it!
+</div>
+
+...and many more. Most importantly, if you have an idea of how to contribute, then do it!
+
+</br>
 
 ## Contributing code
 
+</br>
+
 Below is a tutorial for contributing code to Beam, covering our tools and typical process in
 detail.
 
+</br>
+
 ### Prerequisites
 
-To contribute code, you need
+<div class="arrow-list">
+
+- a GitHub account
+- a Linux, macOS, or Microsoft Windows development environment with Java JDK 8 installed
+- [Docker](https://www.docker.com/) installed for some tasks including building worker containers and testing this website
+  changes locally
+- [Go](https://golang.org) 1.12 or later installed for Go SDK development
+- Python 3.6, 3.7, and 3.8. Yes, you need all four versions installed.
+
+  pip, setuptools, virtualenv, and tox installed for Python development
+
+- for large contributions, a signed [Individual Contributor License
+  Agreement](https://www.apache.org/licenses/icla.pdf) (ICLA) to the Apache
+  Software Foundation (ASF).
 
- - a GitHub account
- - a Linux, macOS, or Microsoft Windows development environment with Java JDK 8 installed
- - [Docker](https://www.docker.com/) installed for some tasks including building worker containers and testing this website
-   changes locally
- - [Go](https://golang.org) 1.12 or later installed for Go SDK development
- - Python 3.6, 3.7, and 3.8. Yes, you need all three versions installed.
-    - pip, setuptools, virtualenv, and tox installed for Python development
- - for large contributions, a signed [Individual Contributor License
-   Agreement](https://www.apache.org/licenses/icla.pdf) (ICLA) to the Apache
-   Software Foundation (ASF).
+</div>

Review comment:
       Would it be possible to just use a different layout on the "become a committer" page that renders lists with arrow-list?




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] Jakub-Sadowski commented on a change in pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
Jakub-Sadowski commented on a change in pull request #13565:
URL: https://github.com/apache/beam/pull/13565#discussion_r570094371



##########
File path: website/www/site/content/en/contribute/_index.md
##########
@@ -127,173 +128,9 @@ script which is part of the Beam repo:
 1. Assign the issue to yourself. To get the permission to do so, email
    the [dev@ mailing list](/community/contact-us)
    to introduce yourself and to be added as a contributor in the Beam issue tracker including your
-   ASF Jira Username. For example [this welcome email](
-   https://lists.apache.org/thread.html/e6018c2aaf7dc7895091434295e5b0fafe192b975e3e3761fcf0cda7@%3Cdev.beam.apache.org%3E).
+   ASF Jira Username. For example [this welcome email](https://lists.apache.org/thread.html/e6018c2aaf7dc7895091434295e5b0fafe192b975e3e3761fcf0cda7@%3Cdev.beam.apache.org%3E).
 1. If your change is large or it is your first change, it is a good idea to
    [discuss it on the dev@ mailing list](/community/contact-us/).
 1. For large changes create a design doc
    ([template](https://s.apache.org/beam-design-doc-template),
    [examples](https://s.apache.org/beam-design-docs)) and email it to the [dev@ mailing list](/community/contact-us).
-
-### Development Setup {#development-setup}
-
-1. If you need help with git forking, cloning, branching, committing, pull requests, and squashing commits, see
-   [Git workflow tips](https://cwiki.apache.org/confluence/display/BEAM/Git+Tips)
-1. Familiarize yourself with gradle and the project structure. At the root of the git repository, run:

Review comment:
       we are getting rid of it




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] Jakub-Sadowski commented on a change in pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
Jakub-Sadowski commented on a change in pull request #13565:
URL: https://github.com/apache/beam/pull/13565#discussion_r559200138



##########
File path: website/www/site/assets/scss/lists.scss
##########
@@ -0,0 +1,146 @@
+/*!
+ *  Licensed to the Apache Software Foundation (ASF) under one or more
+ *  contributor license agreements.  See the NOTICE file distributed with
+ *  this work for additional information regarding copyright ownership.
+ *  The ASF licenses this file to You under the Apache License, Version 2.0
+ *  (the "License"); you may not use this file except in compliance with
+ *  the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing, software
+ *  distributed under the License is distributed on an "AS IS" BASIS,
+ *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *  See the License for the specific language governing permissions and
+ *  limitations under the License.
+ */
+@import "media";
+
+.arrow-list {
+  margin-top: 26px;
+  ul {
+    font-size: 16px;
+    font-weight: normal;
+    line-height: 1.63;
+    letter-spacing: 0.43px;
+    position: relative;
+    li:before {
+      content: "\2192";
+      position: absolute;
+      color: #ff6d05;
+      font-size: 24px;
+      line-height: 20px;
+      left: 0;
+    }
+    li {
+      list-style-type: none;
+      list-style-position: outside;
+      margin-bottom: 6px;
+      p {
+        margin: 0;
+      }
+    }
+  }
+}
+.arrow-lists-desktop {
+  margin-top: 36px;
+}
+.arrow-lists-mobile {
+  display: none;
+  .arrow-list-header {
+    font-size: 28px;
+    font-weight: 500;
+    line-height: 1.29;
+    letter-spacing: normal;
+    color: #333333;
+    text-decoration: none;
+    display: flex;
+    img {
+      margin-top: 17px;
+      width: 18px;
+      height: 18px;
+      padding-right: 16px;
+      transform: rotate(-90deg);
+    }
+  }
+  .rotate {
+    img {
+      transform: rotate(0deg);
+      margin-top: 26px;
+    }
+  }
+}
+@media (max-width: $mobile) {
+  .arrow-lists-desktop {
+    display: none;
+  }
+  .arrow-lists-mobile {
+    display: block;
+  }
+}
+pre {
+  background: rgba(255, 109, 0, 0.03);
+  border-radius: 8px;
+  border: solid 0.6px #ff6d05;
+  font-family: Menlo;
+  font-size: 16px;

Review comment:
       Yes, it was in two places, I deleted it




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] Jakub-Sadowski commented on a change in pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
Jakub-Sadowski commented on a change in pull request #13565:
URL: https://github.com/apache/beam/pull/13565#discussion_r547533929



##########
File path: website/www/site/content/en/contribute/_index.md
##########
@@ -21,57 +22,65 @@ See the License for the specific language governing permissions and
 limitations under the License.
 -->
 
-# Apache Beam Contribution Guide
+# Contribution guide
+
+</br>
+
+<div class="arrow-lists-desktop">
+
+## Overview
 
-The Apache Beam community welcomes contributions from anyone!
+</br>
 
-If you have questions, please [reach out to the Beam community](/contribute/get-help).
+There are lots of opportunities to contribute. You can for example:
 
-There are lots of opportunities to contribute:
+<div class="arrow-list">
 
- - ask or answer questions on [user@beam.apache.org](/community/contact-us/) or
-[stackoverflow](https://stackoverflow.com/questions/tagged/apache-beam)
- - review proposed design ideas on [dev@beam.apache.org](/community/contact-us/)
- - improve the documentation
- - file [bug reports](https://issues.apache.org/jira/projects/BEAM/issues)
- - test releases
- - review [changes](https://github.com/apache/beam/pulls)
- - write new examples
- - improve your favorite language SDK (Java, Python, Go, etc)
- - improve specific runners (Apache Flink, Apache Spark, Google
-   Cloud Dataflow, etc)
- - improve or add IO connectors
- - add new transform libraries (statistics, ML, image processing, etc)
- - work on the core programming model (what is a Beam pipeline and how does it
-   run?)
- - improve the developer experience (for example, Windows guides)
- - add answers to the [contribution FAQ](
- https://cwiki.apache.org/confluence/display/BEAM/Contributor+FAQ)
- - organize local meetups of users or contributors to Apache Beam
+- ask or answer questions on [user@beam.apache.org](/community/contact-us/) or
+  [stackoverflow](https://stackoverflow.com/questions/tagged/apache-beam)
+- review proposed design ideas on [dev@beam.apache.org](/community/contact-us/)
+- file [bug reports](https://issues.apache.org/jira/projects/BEAM/issues)
+- review [changes](https://github.com/apache/beam/pulls)
+- work on the core programming model (what is a Beam pipeline and how does it
+  run?)
+- improve the developer experience (for example, Windows guides)
+- organize local meetups of users or contributors to Apache Beam
 
-Most importantly, if you have an idea of how to contribute, then do it!
+</div>
+
+...and many more. Most importantly, if you have an idea of how to contribute, then do it!
+
+</br>
 
 ## Contributing code
 
+</br>
+
 Below is a tutorial for contributing code to Beam, covering our tools and typical process in
 detail.
 
+</br>
+
 ### Prerequisites
 
-To contribute code, you need
+<div class="arrow-list">
+
+- a GitHub account
+- a Linux, macOS, or Microsoft Windows development environment with Java JDK 8 installed
+- [Docker](https://www.docker.com/) installed for some tasks including building worker containers and testing this website
+  changes locally
+- [Go](https://golang.org) 1.12 or later installed for Go SDK development
+- Python 3.6, 3.7, and 3.8. Yes, you need all four versions installed.
+
+  pip, setuptools, virtualenv, and tox installed for Python development
+
+- for large contributions, a signed [Individual Contributor License
+  Agreement](https://www.apache.org/licenses/icla.pdf) (ICLA) to the Apache
+  Software Foundation (ASF).
 
- - a GitHub account
- - a Linux, macOS, or Microsoft Windows development environment with Java JDK 8 installed
- - [Docker](https://www.docker.com/) installed for some tasks including building worker containers and testing this website
-   changes locally
- - [Go](https://golang.org) 1.12 or later installed for Go SDK development
- - Python 3.6, 3.7, and 3.8. Yes, you need all three versions installed.
-    - pip, setuptools, virtualenv, and tox installed for Python development
- - for large contributions, a signed [Individual Contributor License
-   Agreement](https://www.apache.org/licenses/icla.pdf) (ICLA) to the Apache
-   Software Foundation (ASF).
+</div>

Review comment:
       > Would it be possible to just use a different layout on the "become a committer" page that renders lists with arrow-list?
   
   Yes, I can make custom layouts for single pages, I think you mean the "Contribution guide" page right? Because there are this arrow-lists.




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] Jakub-Sadowski commented on a change in pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
Jakub-Sadowski commented on a change in pull request #13565:
URL: https://github.com/apache/beam/pull/13565#discussion_r570484930



##########
File path: website/www/site/static/js/copy-to-clipboard.js
##########
@@ -0,0 +1,42 @@
+// Licensed under the Apache License, Version 2.0 (the 'License'); you may not
+// use this file except in compliance with the License. You may obtain a copy of
+// the License at
+//
+//   http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an 'AS IS' BASIS, WITHOUT
+// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+// License for the specific language governing permissions and limitations under
+// the License.
+
+$(document).ready(function() {
+    function copy() {
+        $(".copy").click(function(){
+            var text=$(this).siblings()[$(this).siblings().length-1].childNodes[0].innerHTML;
+            const el=document.createElement('textarea');
+            el.value=text;document.body.appendChild(el);
+            el.select();document.execCommand('copy');
+            document.body.removeChild(el);
+            alert('copied to clipboard');
+        })
+        $(".just-copy").click(function(){
+            var text=$(this).parent().siblings()[0].innerHTML;
+            const el=document.createElement('textarea');
+            el.value=text;document.body.appendChild(el);
+            el.select();document.execCommand('copy');
+            document.body.removeChild(el);
+            alert('copied to clipboard');

Review comment:
       From fastest ways I can change it to pop up under a button, but then there would be no popover when user hover on an icon




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] Jakub-Sadowski commented on a change in pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
Jakub-Sadowski commented on a change in pull request #13565:
URL: https://github.com/apache/beam/pull/13565#discussion_r569702710



##########
File path: website/www/site/content/en/blog/adding-data-sources-to-sql.md
##########
@@ -81,7 +81,7 @@ The `TableProvider` classes are under
 
 Our table provider looks like this:
 
-{{< highlight java >}}
+{{< highlight language="java" >}}

Review comment:
       not really, because when we have buttons leading to run the code or to the source code, there are 3 arguments there and not using variables when there are really long paths to those buttons above, will end with a lot of mistakes and the highlights will be unreadable




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] TheNeuralBit commented on a change in pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
TheNeuralBit commented on a change in pull request #13565:
URL: https://github.com/apache/beam/pull/13565#discussion_r570462057



##########
File path: website/www/site/static/js/copy-to-clipboard.js
##########
@@ -0,0 +1,42 @@
+// Licensed under the Apache License, Version 2.0 (the 'License'); you may not
+// use this file except in compliance with the License. You may obtain a copy of
+// the License at
+//
+//   http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an 'AS IS' BASIS, WITHOUT
+// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+// License for the specific language governing permissions and limitations under
+// the License.
+
+$(document).ready(function() {
+    function copy() {
+        $(".copy").click(function(){
+            var text=$(this).siblings()[$(this).siblings().length-1].childNodes[0].innerHTML;
+            const el=document.createElement('textarea');
+            el.value=text;document.body.appendChild(el);
+            el.select();document.execCommand('copy');
+            document.body.removeChild(el);
+            alert('copied to clipboard');
+        })
+        $(".just-copy").click(function(){
+            var text=$(this).parent().siblings()[0].innerHTML;
+            const el=document.createElement('textarea');
+            el.value=text;document.body.appendChild(el);
+            el.select();document.execCommand('copy');
+            document.body.removeChild(el);
+            alert('copied to clipboard');

Review comment:
       This alert is strange to me. It's weird to have to click "OK" after copying.
   
   Other implementations of this sort of featureu usually pop up a notification to let you know the content has been copied, but you don't have to acknowledge it. If it's too much to address this right now let's file a jira about it.




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] Jakub-Sadowski commented on a change in pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
Jakub-Sadowski commented on a change in pull request #13565:
URL: https://github.com/apache/beam/pull/13565#discussion_r569703498



##########
File path: website/www/site/content/en/contribute/practises.md
##########
@@ -0,0 +1,66 @@
+---
+title: "Beam community’s practises"
+layout: "arrow_template"
+---
+
+<!--
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+-->
+
+# Beam community’s practises
+
+{{< figure src="/images/community/messages-icon.svg" >}}
+
+## Knows, upholds, and reinforces the Beam community’s practices
+
+- They have a proven commitment to the project
+- They share their intentions with the community
+- They accept and integrate community feedback in their plans, designs, code, etc.
+- They earnestly try to make Beam better with their contributions
+
+In particular, if a code contributor:
+
+- They earnestly try to make Beam better with their own code
+- They earnestly try to make Beam better with code review
+- They accept and integrate feedback on their code
+- They know, follow, and enforce Beam’s practices while reviewing/merging code - style, documentation, testing, backward compatibility, etc.
+
+{{< figure src="/images/community/beam-logo-icon.svg" >}}
+
+## Knows, upholds, and reinforces the Apache Software Foundation code of conduct
+
+In particular, we manifestly strive to:
+
+- Be open
+- Be empathetic
+- Be welcoming
+- Be friendly
+- Be patient
+- Be collaborative
+- Be inquisitive
+- Be careful in the words that they choose
+
+[To learn more see the ASF documentation.](https://httpd.apache.org/docs/)
+
+{{< figure src="/images/community/diamond-icon.svg" >}}
+
+## Knows, upholds, and reinforces the responsibilities of an Apache Software Foundation committer
+
+- They help create a product that will outlive the interest of any particular volunteer (including themselves)
+- They grow and maintain the health of the Apache community
+- They help out with surrounding work, such as the website & documentation
+- They help users
+- They can be trusted to decide when code is ready for release, or when to ask someone else to make the judgment
+- They can be trusted to decide when to merge code (if a code contributor) or when to ask someone else to make the judgment
+
+[To learn more see the ASF documentation.](https://httpd.apache.org/docs/)

Review comment:
       Okay, thanks 




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] Jakub-Sadowski commented on a change in pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
Jakub-Sadowski commented on a change in pull request #13565:
URL: https://github.com/apache/beam/pull/13565#discussion_r567324479



##########
File path: website/www/site/content/en/contribute/_index.md
##########
@@ -83,217 +76,136 @@ sudo apt-get install \
    docker-ce
 ```
 
-On some systems (like Ubuntu 20.04) these need to be installed also
-```
-pip3 install grpcio-tools mypy-protobuf
-```
+</br>
 
 You also need to [install Go](https://golang.org/doc/install).
 
+</br>
+
 Once Go is installed, install goavro:
 
+</br>
+

Review comment:
       I deleted as much as I could




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] TheNeuralBit commented on a change in pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
TheNeuralBit commented on a change in pull request #13565:
URL: https://github.com/apache/beam/pull/13565#discussion_r570418418



##########
File path: website/www/site/layouts/shortcodes/highlight.html
##########
@@ -12,20 +12,36 @@
 
 {{ $content := (trim .Inner "\n\r") | htmlUnescape | safeHTML }}
 {{ $ctx := . }}
-{{ with (.Get "class") }}
-    <div class={{ . }}>
-        {{ with ($ctx.Get "lang") }}
+{{ $py := .Get "py" }}
+{{ with (.Get "language") }}
+    <div class='{{ printf "language-%s" . }} snippet'>
+        <div class="notebook-skip code-snippet">
+            {{ with $py }}
+                <a target="_blank" type="button" data-bs-toggle="tooltip" data-bs-placement="bottom" title="Run code" href="https://colab.research.google.com/github/{{ $ctx.Site.Params.branch_repo }}/{{ $ctx.Get `notebook` }}-py.ipynb">
+                    <img src="/images/run-icon.svg"/>
+                </a>
+                <a target="_blank" type="button" data-bs-toggle="tooltip" data-bs-placement="bottom" title="View source code" href="https://github.com/{{ $ctx.Site.Params.branch_repo }}/{{ $ctx.Get `py` }}">
+                    <img src="/images/code-icon.svg"/>
+                </a>
+                <a class="copy" type="button" data-bs-toggle="tooltip" data-bs-placement="bottom" title="Copy to clipboard">
+                    <img src="/images/copy-icon.svg"/>
+                </a>
+            {{ else }}
+                <a class="copy" type="button" data-bs-toggle="tooltip" data-bs-placement="bottom" title="Copy to clipboard">
+                    <img src="/images/copy-icon.svg"/>
+                </a>
+            {{ end }}
             {{ highlight $content . "" }}
-        {{ else }}
-            {{ highlight $content "" "" }}
-        {{ end }}
+        </div>
     </div>
 {{ else }}
-    {{ with (.Get 0) }}
-        <div class={{ printf "language-%s" . }}>
-            {{ highlight $content . "" }}
+    <div class="snippet">
+        <div class="notebook-skip code-snippet without_switcher">
+            <a class="copy" type="button" data-bs-toggle="tooltip" data-bs-placement="bottom" title="Copy to clipboard">
+                <img src="/images/copy-icon.svg"/>
+            </a>
+            {{ highlight $content "" "" }}
         </div>
-    {{ else }}
-        {{ highlight $content "" "" }}
-    {{ end }}
+    </div>

Review comment:
       This looks great, thank you!




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] TheNeuralBit commented on a change in pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
TheNeuralBit commented on a change in pull request #13565:
URL: https://github.com/apache/beam/pull/13565#discussion_r545429399



##########
File path: website/www/site/content/en/contribute/_index.md
##########
@@ -21,57 +22,65 @@ See the License for the specific language governing permissions and
 limitations under the License.
 -->
 
-# Apache Beam Contribution Guide
+# Contribution guide
+
+</br>
+
+<div class="arrow-lists-desktop">
+
+## Overview
 
-The Apache Beam community welcomes contributions from anyone!
+</br>
 
-If you have questions, please [reach out to the Beam community](/contribute/get-help).
+There are lots of opportunities to contribute. You can for example:
 
-There are lots of opportunities to contribute:
+<div class="arrow-list">
 
- - ask or answer questions on [user@beam.apache.org](/community/contact-us/) or
-[stackoverflow](https://stackoverflow.com/questions/tagged/apache-beam)
- - review proposed design ideas on [dev@beam.apache.org](/community/contact-us/)
- - improve the documentation
- - file [bug reports](https://issues.apache.org/jira/projects/BEAM/issues)
- - test releases
- - review [changes](https://github.com/apache/beam/pulls)
- - write new examples
- - improve your favorite language SDK (Java, Python, Go, etc)
- - improve specific runners (Apache Flink, Apache Spark, Google
-   Cloud Dataflow, etc)
- - improve or add IO connectors
- - add new transform libraries (statistics, ML, image processing, etc)
- - work on the core programming model (what is a Beam pipeline and how does it
-   run?)
- - improve the developer experience (for example, Windows guides)
- - add answers to the [contribution FAQ](
- https://cwiki.apache.org/confluence/display/BEAM/Contributor+FAQ)
- - organize local meetups of users or contributors to Apache Beam
+- ask or answer questions on [user@beam.apache.org](/community/contact-us/) or
+  [stackoverflow](https://stackoverflow.com/questions/tagged/apache-beam)
+- review proposed design ideas on [dev@beam.apache.org](/community/contact-us/)
+- file [bug reports](https://issues.apache.org/jira/projects/BEAM/issues)
+- review [changes](https://github.com/apache/beam/pulls)
+- work on the core programming model (what is a Beam pipeline and how does it
+  run?)
+- improve the developer experience (for example, Windows guides)
+- organize local meetups of users or contributors to Apache Beam
 
-Most importantly, if you have an idea of how to contribute, then do it!
+</div>
+
+...and many more. Most importantly, if you have an idea of how to contribute, then do it!
+
+</br>
 
 ## Contributing code
 
+</br>
+
 Below is a tutorial for contributing code to Beam, covering our tools and typical process in
 detail.
 
+</br>
+
 ### Prerequisites
 
-To contribute code, you need
+<div class="arrow-list">
+
+- a GitHub account
+- a Linux, macOS, or Microsoft Windows development environment with Java JDK 8 installed
+- [Docker](https://www.docker.com/) installed for some tasks including building worker containers and testing this website
+  changes locally
+- [Go](https://golang.org) 1.12 or later installed for Go SDK development
+- Python 3.6, 3.7, and 3.8. Yes, you need all four versions installed.
+
+  pip, setuptools, virtualenv, and tox installed for Python development
+
+- for large contributions, a signed [Individual Contributor License
+  Agreement](https://www.apache.org/licenses/icla.pdf) (ICLA) to the Apache
+  Software Foundation (ASF).
 
- - a GitHub account
- - a Linux, macOS, or Microsoft Windows development environment with Java JDK 8 installed
- - [Docker](https://www.docker.com/) installed for some tasks including building worker containers and testing this website
-   changes locally
- - [Go](https://golang.org) 1.12 or later installed for Go SDK development
- - Python 3.6, 3.7, and 3.8. Yes, you need all three versions installed.
-    - pip, setuptools, virtualenv, and tox installed for Python development
- - for large contributions, a signed [Individual Contributor License
-   Agreement](https://www.apache.org/licenses/icla.pdf) (ICLA) to the Apache
-   Software Foundation (ASF).
+</div>

Review comment:
       Is it possible to get the appearance we want without making changes to the content?
   1) It will be a challenge to avoid merge conflicts between the `website-revamp` branch and `master` if we start making changes to content
   2) Appearance should be as independent from content as possible (i.e. we shouldn't have `<div>`s and `<br>`s in the markdown)
   
   The biggest change in this page is making all the bulleted lists use "arrow-list", and adding some extra `<br>`s, maybe that could be done with a custom layout instead?

##########
File path: website/www/site/content/en/contribute/_index.md
##########
@@ -21,57 +22,65 @@ See the License for the specific language governing permissions and
 limitations under the License.
 -->
 
-# Apache Beam Contribution Guide
+# Contribution guide
+
+</br>
+
+<div class="arrow-lists-desktop">
+
+## Overview
 
-The Apache Beam community welcomes contributions from anyone!
+</br>
 
-If you have questions, please [reach out to the Beam community](/contribute/get-help).
+There are lots of opportunities to contribute. You can for example:
 
-There are lots of opportunities to contribute:
+<div class="arrow-list">
 
- - ask or answer questions on [user@beam.apache.org](/community/contact-us/) or
-[stackoverflow](https://stackoverflow.com/questions/tagged/apache-beam)
- - review proposed design ideas on [dev@beam.apache.org](/community/contact-us/)
- - improve the documentation
- - file [bug reports](https://issues.apache.org/jira/projects/BEAM/issues)
- - test releases
- - review [changes](https://github.com/apache/beam/pulls)
- - write new examples
- - improve your favorite language SDK (Java, Python, Go, etc)
- - improve specific runners (Apache Flink, Apache Spark, Google
-   Cloud Dataflow, etc)
- - improve or add IO connectors
- - add new transform libraries (statistics, ML, image processing, etc)
- - work on the core programming model (what is a Beam pipeline and how does it
-   run?)
- - improve the developer experience (for example, Windows guides)
- - add answers to the [contribution FAQ](
- https://cwiki.apache.org/confluence/display/BEAM/Contributor+FAQ)
- - organize local meetups of users or contributors to Apache Beam
+- ask or answer questions on [user@beam.apache.org](/community/contact-us/) or
+  [stackoverflow](https://stackoverflow.com/questions/tagged/apache-beam)
+- review proposed design ideas on [dev@beam.apache.org](/community/contact-us/)
+- file [bug reports](https://issues.apache.org/jira/projects/BEAM/issues)
+- review [changes](https://github.com/apache/beam/pulls)
+- work on the core programming model (what is a Beam pipeline and how does it
+  run?)
+- improve the developer experience (for example, Windows guides)
+- organize local meetups of users or contributors to Apache Beam
 
-Most importantly, if you have an idea of how to contribute, then do it!
+</div>
+
+...and many more. Most importantly, if you have an idea of how to contribute, then do it!
+
+</br>
 
 ## Contributing code
 
+</br>
+
 Below is a tutorial for contributing code to Beam, covering our tools and typical process in
 detail.
 
+</br>
+
 ### Prerequisites
 
-To contribute code, you need
+<div class="arrow-list">
+
+- a GitHub account
+- a Linux, macOS, or Microsoft Windows development environment with Java JDK 8 installed
+- [Docker](https://www.docker.com/) installed for some tasks including building worker containers and testing this website
+  changes locally
+- [Go](https://golang.org) 1.12 or later installed for Go SDK development
+- Python 3.6, 3.7, and 3.8. Yes, you need all four versions installed.
+
+  pip, setuptools, virtualenv, and tox installed for Python development
+
+- for large contributions, a signed [Individual Contributor License
+  Agreement](https://www.apache.org/licenses/icla.pdf) (ICLA) to the Apache
+  Software Foundation (ASF).
 
- - a GitHub account
- - a Linux, macOS, or Microsoft Windows development environment with Java JDK 8 installed
- - [Docker](https://www.docker.com/) installed for some tasks including building worker containers and testing this website
-   changes locally
- - [Go](https://golang.org) 1.12 or later installed for Go SDK development
- - Python 3.6, 3.7, and 3.8. Yes, you need all three versions installed.
-    - pip, setuptools, virtualenv, and tox installed for Python development
- - for large contributions, a signed [Individual Contributor License
-   Agreement](https://www.apache.org/licenses/icla.pdf) (ICLA) to the Apache
-   Software Foundation (ASF).
+</div>

Review comment:
       Any changes to the actual content of the page should be done on master, instead of on the website-revamp branch

##########
File path: website/www/site/content/en/contribute/become-a-committer.md
##########
@@ -15,83 +16,31 @@ See the License for the specific language governing permissions and
 limitations under the License.
 -->
 
-# Become a Committer
-
-An Apache Beam
-[committer](https://www.apache.org/foundation/how-it-works.html#committers) has
-write access to the repository for merging pull requests, but you don't have
-to be a code contributor to become a committer. Becoming a committer means that
-you have the project's trust. Read the [ASF
-documentation](https://www.apache.org/dev/committers.html#committer-responsibilities)
-for more about being a committer in the Apache Software Foundation.
-
-The [PMC](https://www.apache.org/foundation/how-it-works.html#pmc-members)
-makes someone a committer via nomination, discussion, and then majority vote.
-We use data from as many sources as possible to inform our reasoning. Here are
-some examples:
-
- - [dev@ archives](https://lists.apache.org/list.html?dev@beam.apache.org) and [statistics](https://lists.apache.org/trends.html?dev@beam.apache.org)
- - [user@ archives](https://lists.apache.org/list.html?user@beam.apache.org) and [statistics](https://lists.apache.org/trends.html?user@beam.apache.org)
- - [`apache-beam` StackOverflow tag](https://stackoverflow.com/questions/tagged/apache-beam)
- - Git metrics for [Beam](https://github.com/apache/beam/graphs/contributors)
- - Code reviews given and received on
-   [Beam](https://github.com/apache/beam/pulls)
- - Clear areas of ownership (a runner, a DSL, IO connector, documentation,
-   etc.)
- - Public events
- - Firsthand PMC testimonials
-
-The PMC has assembled the following set of guidelines for becoming a committer.
-
-## An Apache Beam committer...
-
-### Takes many forms
-
-There are many actions other than coding that build the trust we place in a
-committer - code review, design discussion, user support, community outreach, improving
-infrastructure, documentation, project management, etc.
-
-### Knows, upholds, and reinforces the Apache Software Foundation code of conduct
-
-See the [ASF
-documentation](https://www.apache.org/foundation/policies/conduct.html). In
-particular, they manifestly strive to:
-
- - Be open
- - Be empathetic
- - Be welcoming
- - Be friendly
- - Be patient
- - Be collaborative
- - Be inquisitive
- - Be careful in the words that they choose
-
-### Knows, upholds, and reinforces the responsibilities of an Apache Software Foundation committer
-
-See the [ASF documentation](https://www.apache.org/dev/committers.html#committer-responsibilities).
-
- - They help create a product that will outlive the interest of any particular
-   volunteer (including themselves)
- - They grow and maintain the health of the Apache community
- - They help out with surrounding work, such as the website & documentation
- - They help users
- - They can be trusted to decide when code is ready for release, or when to ask
-   someone else to make the judgment
- - They can be trusted to decide when to merge code (if a code contributor) or
-   when to ask someone else to make the judgment
-
-### Knows, upholds, and reinforces the Beam community’s practices
-
- - They have a proven commitment to the project
- - They share their intentions with the community
- - They accept and integrate community feedback in their plans, designs,
-   code, etc.
- - They earnestly try to make Beam better with their contributions
- - In particular, if a code contributor:
-   - They earnestly try to make Beam better with their own code
-   - They earnestly try to make Beam better with code review
-   - They accept and integrate feedback on their code
-   - They know, follow, and enforce Beam’s practices while
-     reviewing/merging code - style, documentation, testing, backward
-     compatibility, etc.
+# Become a Beam Committer
+
+</br>
+
+An Apache Beam [committer](https://www.apache.org/foundation/how-it-works.html#committers) takes many forms. There are many actions other than coding that build the trust we place in a committer - code review, design discussion, user support, community outreach, improving infrastructure, documentation, project management, etc.
+
+</br>
+
+### What does it mean being a commiter?

Review comment:
       ```suggestion
   ### What does it mean being a committer?
   ```
   
   This mistake is in a few places, including in the path ` website/www/site/assets/icons/contributor/become a commiter/`




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] Jakub-Sadowski commented on pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
Jakub-Sadowski commented on pull request #13565:
URL: https://github.com/apache/beam/pull/13565#issuecomment-751662889


   Review: @kgabryje


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] Jakub-Sadowski commented on a change in pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
Jakub-Sadowski commented on a change in pull request #13565:
URL: https://github.com/apache/beam/pull/13565#discussion_r569703210



##########
File path: website/www/site/content/en/contribute/practises.md
##########
@@ -0,0 +1,66 @@
+---
+title: "Beam community’s practises"
+layout: "arrow_template"
+---
+
+<!--
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+-->
+
+# Beam community’s practises

Review comment:
       ok




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] TheNeuralBit commented on a change in pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
TheNeuralBit commented on a change in pull request #13565:
URL: https://github.com/apache/beam/pull/13565#discussion_r569882120



##########
File path: website/www/site/content/en/documentation/io/developing-io-java.md
##########
@@ -17,9 +17,6 @@ limitations under the License.
 -->
 # Developing I/O connectors for Java
 
-**IMPORTANT:** Use ``Splittable DoFn`` to develop your new I/O. For more details, read the
-[new I/O connector overview](/documentation/io/developing-io-overview/).

Review comment:
       There are still several changes like this that look like you've reverted changes that happened on master already - see also create-external-table.md, and dsls/dataframes/overview.md

##########
File path: website/www/site/content/en/documentation/transforms/python/aggregation/combineperkey.md
##########
@@ -38,7 +38,7 @@ We use the function
 [`sum`](https://docs.python.org/3/library/functions.html#sum)
 which takes an `iterable` of numbers and adds them together.
 
-{{< highlight py >}}
+{{< highlight language="py" py="sdks/python/apache_beam/examples/snippets/transforms/aggregation/combineperkey.py" >}}

Review comment:
       None of these have `notebook=` arguments, so the "run" button just goes to https://colab.sandbox.google.com/github/apache/beam/blob/master/-py.ipynb (which doesn't work of course).
   
   Are there existing notebooks that these can point to, or are we planning on creating those later?
   
   I think we should not show the "run" button when notebook isn't specified.

##########
File path: website/www/site/layouts/shortcodes/highlight.html
##########
@@ -12,20 +12,36 @@
 
 {{ $content := (trim .Inner "\n\r") | htmlUnescape | safeHTML }}
 {{ $ctx := . }}
-{{ with (.Get "class") }}
-    <div class={{ . }}>
-        {{ with ($ctx.Get "lang") }}
+{{ $py := .Get "py" }}
+{{ with (.Get "language") }}
+    <div class='{{ printf "language-%s" . }} snippet'>
+        <div class="notebook-skip code-snippet">
+            {{ with $py }}
+                <a target="_blank" type="button" data-bs-toggle="tooltip" data-bs-placement="bottom" title="Run code" href="https://colab.research.google.com/github/{{ $ctx.Site.Params.branch_repo }}/{{ $ctx.Get `notebook` }}-py.ipynb">
+                    <img src="/images/run-icon.svg"/>
+                </a>
+                <a target="_blank" type="button" data-bs-toggle="tooltip" data-bs-placement="bottom" title="View source code" href="https://github.com/{{ $ctx.Site.Params.branch_repo }}/{{ $ctx.Get `py` }}">
+                    <img src="/images/code-icon.svg"/>
+                </a>
+                <a class="copy" type="button" data-bs-toggle="tooltip" data-bs-placement="bottom" title="Copy to clipboard">
+                    <img src="/images/copy-icon.svg"/>
+                </a>
+            {{ else }}
+                <a class="copy" type="button" data-bs-toggle="tooltip" data-bs-placement="bottom" title="Copy to clipboard">
+                    <img src="/images/copy-icon.svg"/>
+                </a>
+            {{ end }}
             {{ highlight $content . "" }}
-        {{ else }}
-            {{ highlight $content "" "" }}
-        {{ end }}
+        </div>
     </div>
 {{ else }}
-    {{ with (.Get 0) }}
-        <div class={{ printf "language-%s" . }}>
-            {{ highlight $content . "" }}
+    <div class="snippet">
+        <div class="notebook-skip code-snippet without_switcher">
+            <a class="copy" type="button" data-bs-toggle="tooltip" data-bs-placement="bottom" title="Copy to clipboard">
+                <img src="/images/copy-icon.svg"/>
+            </a>
+            {{ highlight $content "" "" }}
         </div>
-    {{ else }}
-        {{ highlight $content "" "" }}
-    {{ end }}
+    </div>

Review comment:
       The existing `highlight` shortcode accepts either positional parameters `{{< highlight java >}}` or named parameters `{{< highlight lang="java" >}}`. This new shortcode should maintain that behavior as much as possible. Let's make it so that `{{< highlight java >}}` and `{{< highlight lang="java" >}}` still work with some default behavior, so we don't need to update all the current usages.
   
   Here's how I think this shortcode should work:
   - If only the language is specified (`highlight java` OR `highlight lang="java"`), create a box with just the "copy to clipboard" button.
   - If a "file" named argument is specified, add a "View source code" button to the box. Note this argument should be named "file" not "py" - we could use it to link to code in other languages. 
   - If a "notebook" named argument is specified, add a "Run code" button to the box. This fixes the issue in my last comment.
   
   Note in this proposal file and notebook are completely considerations. A snippet might have just a (Copy, Run Code) or it might have just (Copy, View Code, Run Code).

##########
File path: website/www/site/content/en/contribute/_index.md
##########
@@ -127,173 +128,9 @@ script which is part of the Beam repo:
 1. Assign the issue to yourself. To get the permission to do so, email
    the [dev@ mailing list](/community/contact-us)
    to introduce yourself and to be added as a contributor in the Beam issue tracker including your
-   ASF Jira Username. For example [this welcome email](
-   https://lists.apache.org/thread.html/e6018c2aaf7dc7895091434295e5b0fafe192b975e3e3761fcf0cda7@%3Cdev.beam.apache.org%3E).
+   ASF Jira Username. For example [this welcome email](https://lists.apache.org/thread.html/e6018c2aaf7dc7895091434295e5b0fafe192b975e3e3761fcf0cda7@%3Cdev.beam.apache.org%3E).
 1. If your change is large or it is your first change, it is a good idea to
    [discuss it on the dev@ mailing list](/community/contact-us/).
 1. For large changes create a design doc
    ([template](https://s.apache.org/beam-design-doc-template),
    [examples](https://s.apache.org/beam-design-docs)) and email it to the [dev@ mailing list](/community/contact-us).
-
-### Development Setup {#development-setup}
-
-1. If you need help with git forking, cloning, branching, committing, pull requests, and squashing commits, see
-   [Git workflow tips](https://cwiki.apache.org/confluence/display/BEAM/Git+Tips)
-1. Familiarize yourself with gradle and the project structure. At the root of the git repository, run:

Review comment:
       Has this information moved somewhere else, or are we getting rid of it?

##########
File path: website/www/site/layouts/shortcodes/highlight.html
##########
@@ -12,20 +12,36 @@
 
 {{ $content := (trim .Inner "\n\r") | htmlUnescape | safeHTML }}
 {{ $ctx := . }}
-{{ with (.Get "class") }}
-    <div class={{ . }}>
-        {{ with ($ctx.Get "lang") }}
+{{ $py := .Get "py" }}
+{{ with (.Get "language") }}
+    <div class='{{ printf "language-%s" . }} snippet'>
+        <div class="notebook-skip code-snippet">
+            {{ with $py }}
+                <a target="_blank" type="button" data-bs-toggle="tooltip" data-bs-placement="bottom" title="Run code" href="https://colab.research.google.com/github/{{ $ctx.Site.Params.branch_repo }}/{{ $ctx.Get `notebook` }}-py.ipynb">
+                    <img src="/images/run-icon.svg"/>
+                </a>
+                <a target="_blank" type="button" data-bs-toggle="tooltip" data-bs-placement="bottom" title="View source code" href="https://github.com/{{ $ctx.Site.Params.branch_repo }}/{{ $ctx.Get `py` }}">
+                    <img src="/images/code-icon.svg"/>
+                </a>
+                <a class="copy" type="button" data-bs-toggle="tooltip" data-bs-placement="bottom" title="Copy to clipboard">
+                    <img src="/images/copy-icon.svg"/>
+                </a>
+            {{ else }}
+                <a class="copy" type="button" data-bs-toggle="tooltip" data-bs-placement="bottom" title="Copy to clipboard">
+                    <img src="/images/copy-icon.svg"/>
+                </a>
+            {{ end }}
             {{ highlight $content . "" }}
-        {{ else }}
-            {{ highlight $content "" "" }}
-        {{ end }}
+        </div>
     </div>
 {{ else }}
-    {{ with (.Get 0) }}
-        <div class={{ printf "language-%s" . }}>
-            {{ highlight $content . "" }}
+    <div class="snippet">
+        <div class="notebook-skip code-snippet without_switcher">
+            <a class="copy" type="button" data-bs-toggle="tooltip" data-bs-placement="bottom" title="Copy to clipboard">
+                <img src="/images/copy-icon.svg"/>
+            </a>
+            {{ highlight $content "" "" }}
         </div>
-    {{ else }}
-        {{ highlight $content "" "" }}
-    {{ end }}
+    </div>

Review comment:
       It looks like something else has gone wrong with the style, now the buttons are separated from the box:
   
   ![image](https://user-images.githubusercontent.com/675055/106818501-3a250c00-662d-11eb-836a-9a25c68cde71.png)
   




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] Jakub-Sadowski commented on a change in pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
Jakub-Sadowski commented on a change in pull request #13565:
URL: https://github.com/apache/beam/pull/13565#discussion_r570330187



##########
File path: website/www/site/content/en/contribute/_index.md
##########
@@ -21,55 +24,61 @@ See the License for the specific language governing permissions and
 limitations under the License.
 -->
 
-# Apache Beam Contribution Guide
+# Contribution guide
+
+<a class="arrow-list-header" data-toggle="collapse" href="#collapseOverview" role="button" aria-expanded="false"        aria-controls="collapseOverview">
+   {{< figure src="/images/arrow-icon_list.svg">}}

Review comment:
       Yes it was all intentional, only form of the headings are to be fixed




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] Jakub-Sadowski commented on a change in pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
Jakub-Sadowski commented on a change in pull request #13565:
URL: https://github.com/apache/beam/pull/13565#discussion_r569702990



##########
File path: website/www/site/content/en/blog/beam-2.22.0.md
##########
@@ -18,7 +18,7 @@ See the License for the specific language governing permissions and
 limitations under the License.
 -->
 We are happy to present the new 2.22.0 release of Beam. This release includes both improvements and new functionality.
-See the [download page](/get-started/downloads/#2220-2020-06-08) for this release.<!--more-->
+See the [download page](/get-started/downloads/#2220-2020-06-08) for this release.

Review comment:
       damn, yes I will update it
   




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] kgabryje commented on a change in pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
kgabryje commented on a change in pull request #13565:
URL: https://github.com/apache/beam/pull/13565#discussion_r549362555



##########
File path: website/www/site/assets/scss/_calendar.scss
##########
@@ -56,11 +56,13 @@
       }
     }
 
-    .calendar-card-big-left:hover {
-      box-shadow: 0 4px 20px 0 rgba(0, 0, 0, 0.24),
-        0 4px 6px 0 rgba(0, 0, 0, 0.24);
+    .calendar-card-big-left {
+      padding: 0 !important;

Review comment:
       Could you try to get rid of `!important`s? Maybe add some css class to increase specificity?

##########
File path: website/www/site/assets/scss/lists.scss
##########
@@ -0,0 +1,146 @@
+/*!
+ *  Licensed to the Apache Software Foundation (ASF) under one or more
+ *  contributor license agreements.  See the NOTICE file distributed with
+ *  this work for additional information regarding copyright ownership.
+ *  The ASF licenses this file to You under the Apache License, Version 2.0
+ *  (the "License"); you may not use this file except in compliance with
+ *  the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing, software
+ *  distributed under the License is distributed on an "AS IS" BASIS,
+ *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *  See the License for the specific language governing permissions and
+ *  limitations under the License.
+ */
+@import "media";
+
+.arrow-list {
+  margin-top: 26px;
+  ul {
+    font-size: 16px;
+    font-weight: normal;
+    line-height: 1.63;
+    letter-spacing: 0.43px;
+    position: relative;
+    li:before {
+      content: "\2192";
+      position: absolute;
+      color: #ff6d05;
+      font-size: 24px;
+      line-height: 20px;
+      left: 0;
+    }
+    li {
+      list-style-type: none;
+      list-style-position: outside;
+      margin-bottom: 6px;
+      p {
+        margin: 0;
+      }
+    }
+  }
+}
+.arrow-lists-desktop {
+  margin-top: 36px;
+}
+.arrow-lists-mobile {
+  display: none;
+  .arrow-list-header {
+    font-size: 28px;
+    font-weight: 500;
+    line-height: 1.29;
+    letter-spacing: normal;
+    color: #333333;
+    text-decoration: none;
+    display: flex;
+    img {
+      margin-top: 17px;
+      width: 18px;
+      height: 18px;
+      padding-right: 16px;
+      transform: rotate(-90deg);
+    }
+  }
+  .rotate {
+    img {
+      transform: rotate(0deg);
+      margin-top: 26px;
+    }
+  }
+}
+@media (max-width: $mobile) {
+  .arrow-lists-desktop {
+    display: none;
+  }
+  .arrow-lists-mobile {
+    display: block;
+  }
+}
+pre {
+  background: rgba(255, 109, 0, 0.03);
+  border-radius: 8px;
+  border: solid 0.6px #ff6d05;
+  font-family: Menlo;
+  font-size: 16px;

Review comment:
       I think some styles are duplicated with the ones defined in `_global.scss`, like `font-family: Menlo`

##########
File path: website/www/site/content/en/contribute/_index.md
##########
@@ -21,57 +22,65 @@ See the License for the specific language governing permissions and
 limitations under the License.
 -->
 
-# Apache Beam Contribution Guide
+# Contribution guide
+
+</br>
+
+<div class="arrow-lists-desktop">
+
+## Overview
 
-The Apache Beam community welcomes contributions from anyone!
+</br>
 
-If you have questions, please [reach out to the Beam community](/contribute/get-help).
+There are lots of opportunities to contribute. You can for example:
 
-There are lots of opportunities to contribute:
+<div class="arrow-list">
 
- - ask or answer questions on [user@beam.apache.org](/community/contact-us/) or
-[stackoverflow](https://stackoverflow.com/questions/tagged/apache-beam)
- - review proposed design ideas on [dev@beam.apache.org](/community/contact-us/)
- - improve the documentation
- - file [bug reports](https://issues.apache.org/jira/projects/BEAM/issues)
- - test releases
- - review [changes](https://github.com/apache/beam/pulls)
- - write new examples
- - improve your favorite language SDK (Java, Python, Go, etc)
- - improve specific runners (Apache Flink, Apache Spark, Google
-   Cloud Dataflow, etc)
- - improve or add IO connectors
- - add new transform libraries (statistics, ML, image processing, etc)
- - work on the core programming model (what is a Beam pipeline and how does it
-   run?)
- - improve the developer experience (for example, Windows guides)
- - add answers to the [contribution FAQ](
- https://cwiki.apache.org/confluence/display/BEAM/Contributor+FAQ)
- - organize local meetups of users or contributors to Apache Beam
+- ask or answer questions on [user@beam.apache.org](/community/contact-us/) or
+  [stackoverflow](https://stackoverflow.com/questions/tagged/apache-beam)
+- review proposed design ideas on [dev@beam.apache.org](/community/contact-us/)
+- file [bug reports](https://issues.apache.org/jira/projects/BEAM/issues)
+- review [changes](https://github.com/apache/beam/pulls)
+- work on the core programming model (what is a Beam pipeline and how does it
+  run?)
+- improve the developer experience (for example, Windows guides)
+- organize local meetups of users or contributors to Apache Beam
 
-Most importantly, if you have an idea of how to contribute, then do it!
+</div>
+
+...and many more. Most importantly, if you have an idea of how to contribute, then do it!
+
+</br>
 
 ## Contributing code
 
+</br>
+
 Below is a tutorial for contributing code to Beam, covering our tools and typical process in
 detail.
 
+</br>
+
 ### Prerequisites
 
-To contribute code, you need
+<div class="arrow-list">
+
+- a GitHub account
+- a Linux, macOS, or Microsoft Windows development environment with Java JDK 8 installed
+- [Docker](https://www.docker.com/) installed for some tasks including building worker containers and testing this website
+  changes locally
+- [Go](https://golang.org) 1.12 or later installed for Go SDK development
+- Python 3.6, 3.7, and 3.8. Yes, you need all four versions installed.
+
+  pip, setuptools, virtualenv, and tox installed for Python development
+
+- for large contributions, a signed [Individual Contributor License
+  Agreement](https://www.apache.org/licenses/icla.pdf) (ICLA) to the Apache
+  Software Foundation (ASF).
 
- - a GitHub account
- - a Linux, macOS, or Microsoft Windows development environment with Java JDK 8 installed
- - [Docker](https://www.docker.com/) installed for some tasks including building worker containers and testing this website
-   changes locally
- - [Go](https://golang.org) 1.12 or later installed for Go SDK development
- - Python 3.6, 3.7, and 3.8. Yes, you need all three versions installed.
-    - pip, setuptools, virtualenv, and tox installed for Python development
- - for large contributions, a signed [Individual Contributor License
-   Agreement](https://www.apache.org/licenses/icla.pdf) (ICLA) to the Apache
-   Software Foundation (ASF).
+</div>

Review comment:
       I think that we could remove this div, like @TheNeuralBit requested, by styling `<li>` elements with some wrapper class in `/layouts/contribute/baseof.html`. We could replace 
   ```
   <div class="body__contained body__section-nav">
         {{ .Content }}
   </div>
   ```
   with
   ```
   <div class="body__contained body__section-nav arrow-list">
         {{ .Content }}
   </div>
   ```




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] TheNeuralBit commented on a change in pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
TheNeuralBit commented on a change in pull request #13565:
URL: https://github.com/apache/beam/pull/13565#discussion_r570664184



##########
File path: website/www/site/content/en/contribute/_index.md
##########
@@ -21,55 +24,61 @@ See the License for the specific language governing permissions and
 limitations under the License.
 -->
 
-# Apache Beam Contribution Guide
+# Contribution guide
+
+<a class="arrow-list-header" data-toggle="collapse" href="#collapseOverview" role="button" aria-expanded="false"        aria-controls="collapseOverview">
+   {{< figure src="/images/arrow-icon_list.svg">}}

Review comment:
       It looks like there's a <div> that just needs to be moved lower.

##########
File path: website/www/site/content/en/contribute/_index.md
##########
@@ -21,55 +24,61 @@ See the License for the specific language governing permissions and
 limitations under the License.
 -->
 
-# Apache Beam Contribution Guide
+# Contribution guide
+
+<a class="arrow-list-header" data-toggle="collapse" href="#collapseOverview" role="button" aria-expanded="false"        aria-controls="collapseOverview">
+   {{< figure src="/images/arrow-icon_list.svg">}}

Review comment:
       It looks like there's a `</div>` that just needs to be moved lower.




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] Jakub-Sadowski commented on a change in pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
Jakub-Sadowski commented on a change in pull request #13565:
URL: https://github.com/apache/beam/pull/13565#discussion_r570093423



##########
File path: website/www/site/content/en/documentation/transforms/python/aggregation/combineperkey.md
##########
@@ -38,7 +38,7 @@ We use the function
 [`sum`](https://docs.python.org/3/library/functions.html#sum)
 which takes an `iterable` of numbers and adds them together.
 
-{{< highlight py >}}
+{{< highlight language="py" py="sdks/python/apache_beam/examples/snippets/transforms/aggregation/combineperkey.py" >}}

Review comment:
       okay I will modify it
   

##########
File path: website/www/site/layouts/shortcodes/highlight.html
##########
@@ -12,20 +12,36 @@
 
 {{ $content := (trim .Inner "\n\r") | htmlUnescape | safeHTML }}
 {{ $ctx := . }}
-{{ with (.Get "class") }}
-    <div class={{ . }}>
-        {{ with ($ctx.Get "lang") }}
+{{ $py := .Get "py" }}
+{{ with (.Get "language") }}
+    <div class='{{ printf "language-%s" . }} snippet'>
+        <div class="notebook-skip code-snippet">
+            {{ with $py }}
+                <a target="_blank" type="button" data-bs-toggle="tooltip" data-bs-placement="bottom" title="Run code" href="https://colab.research.google.com/github/{{ $ctx.Site.Params.branch_repo }}/{{ $ctx.Get `notebook` }}-py.ipynb">
+                    <img src="/images/run-icon.svg"/>
+                </a>
+                <a target="_blank" type="button" data-bs-toggle="tooltip" data-bs-placement="bottom" title="View source code" href="https://github.com/{{ $ctx.Site.Params.branch_repo }}/{{ $ctx.Get `py` }}">
+                    <img src="/images/code-icon.svg"/>
+                </a>
+                <a class="copy" type="button" data-bs-toggle="tooltip" data-bs-placement="bottom" title="Copy to clipboard">
+                    <img src="/images/copy-icon.svg"/>
+                </a>
+            {{ else }}
+                <a class="copy" type="button" data-bs-toggle="tooltip" data-bs-placement="bottom" title="Copy to clipboard">
+                    <img src="/images/copy-icon.svg"/>
+                </a>
+            {{ end }}
             {{ highlight $content . "" }}
-        {{ else }}
-            {{ highlight $content "" "" }}
-        {{ end }}
+        </div>
     </div>
 {{ else }}
-    {{ with (.Get 0) }}
-        <div class={{ printf "language-%s" . }}>
-            {{ highlight $content . "" }}
+    <div class="snippet">
+        <div class="notebook-skip code-snippet without_switcher">
+            <a class="copy" type="button" data-bs-toggle="tooltip" data-bs-placement="bottom" title="Copy to clipboard">
+                <img src="/images/copy-icon.svg"/>
+            </a>
+            {{ highlight $content "" "" }}
         </div>
-    {{ else }}
-        {{ highlight $content "" "" }}
-    {{ end }}
+    </div>

Review comment:
       Yes, ur right, I will modify it accordingly

##########
File path: website/www/site/content/en/contribute/_index.md
##########
@@ -127,173 +128,9 @@ script which is part of the Beam repo:
 1. Assign the issue to yourself. To get the permission to do so, email
    the [dev@ mailing list](/community/contact-us)
    to introduce yourself and to be added as a contributor in the Beam issue tracker including your
-   ASF Jira Username. For example [this welcome email](
-   https://lists.apache.org/thread.html/e6018c2aaf7dc7895091434295e5b0fafe192b975e3e3761fcf0cda7@%3Cdev.beam.apache.org%3E).
+   ASF Jira Username. For example [this welcome email](https://lists.apache.org/thread.html/e6018c2aaf7dc7895091434295e5b0fafe192b975e3e3761fcf0cda7@%3Cdev.beam.apache.org%3E).
 1. If your change is large or it is your first change, it is a good idea to
    [discuss it on the dev@ mailing list](/community/contact-us/).
 1. For large changes create a design doc
    ([template](https://s.apache.org/beam-design-doc-template),
    [examples](https://s.apache.org/beam-design-docs)) and email it to the [dev@ mailing list](/community/contact-us).
-
-### Development Setup {#development-setup}
-
-1. If you need help with git forking, cloning, branching, committing, pull requests, and squashing commits, see
-   [Git workflow tips](https://cwiki.apache.org/confluence/display/BEAM/Git+Tips)
-1. Familiarize yourself with gradle and the project structure. At the root of the git repository, run:

Review comment:
       we are getting rid of it

##########
File path: website/www/site/content/en/documentation/io/developing-io-java.md
##########
@@ -17,9 +17,6 @@ limitations under the License.
 -->
 # Developing I/O connectors for Java
 
-**IMPORTANT:** Use ``Splittable DoFn`` to develop your new I/O. For more details, read the
-[new I/O connector overview](/documentation/io/developing-io-overview/).

Review comment:
       okay I will just take contents from website-revamp branch

##########
File path: website/www/site/content/en/contribute/_index.md
##########
@@ -21,55 +24,61 @@ See the License for the specific language governing permissions and
 limitations under the License.
 -->
 
-# Apache Beam Contribution Guide
+# Contribution guide
+
+<a class="arrow-list-header" data-toggle="collapse" href="#collapseOverview" role="button" aria-expanded="false"        aria-controls="collapseOverview">
+   {{< figure src="/images/arrow-icon_list.svg">}}

Review comment:
       Yes it was all intentional, only form of the headings are to be fixed

##########
File path: website/www/site/content/en/contribute/_index.md
##########
@@ -21,55 +24,61 @@ See the License for the specific language governing permissions and
 limitations under the License.
 -->
 
-# Apache Beam Contribution Guide
+# Contribution guide
+
+<a class="arrow-list-header" data-toggle="collapse" href="#collapseOverview" role="button" aria-expanded="false"        aria-controls="collapseOverview">
+   {{< figure src="/images/arrow-icon_list.svg">}}
+
+## Overview
+
+</a>
+
+<div class="collapse dont-collapse-sm" id="collapseOverview">
 
-The Apache Beam community welcomes contributions from anyone!
+There are lots of opportunities to contribute. You can for example:
 
-If you have questions, please [reach out to the Beam community](/contribute/get-help).
+* ask or answer questions on [user@beam.apache.org](/community/contact-us/) or
+  [stackoverflow](https://stackoverflow.com/questions/tagged/apache-beam)
+* review proposed design ideas on [dev@beam.apache.org](/community/contact-us/)
+* file [bug reports](https://issues.apache.org/jira/projects/BEAM/issues)
+* review [changes](https://github.com/apache/beam/pulls)
+* work on the core programming model (what is a Beam pipeline and how does it
+  run?)
+* improve the developer experience (for example, Windows guides)
+* organize local meetups of users or contributors to Apache Beam
 
-There are lots of opportunities to contribute:
+...and many more. Most importantly, if you have an idea of how to contribute, then do it!
 
- - ask or answer questions on [user@beam.apache.org](/community/contact-us/) or
-[stackoverflow](https://stackoverflow.com/questions/tagged/apache-beam)
- - review proposed design ideas on [dev@beam.apache.org](/community/contact-us/)
- - improve the documentation
- - file [bug reports](https://issues.apache.org/jira/projects/BEAM/issues)
- - test releases
- - review [changes](https://github.com/apache/beam/pulls)
- - write new examples
- - improve your favorite language SDK (Java, Python, Go, etc)
- - improve specific runners (Apache Flink, Apache Spark, Google
-   Cloud Dataflow, etc)
- - improve or add IO connectors
- - add new transform libraries (statistics, ML, image processing, etc)
- - work on the core programming model (what is a Beam pipeline and how does it
-   run?)
- - improve the developer experience (for example, Windows guides)
- - add answers to the [contribution FAQ](
- https://cwiki.apache.org/confluence/display/BEAM/Contributor+FAQ)
- - organize local meetups of users or contributors to Apache Beam
+</div>
 
-Most importantly, if you have an idea of how to contribute, then do it!
+<a class="arrow-list-header" data-toggle="collapse" href="#collapseContributing" role="button" aria-expanded="false" aria-controls="collapseContributing">
+   {{< figure src="/images/arrow-icon_list.svg">}}
 
 ## Contributing code
 
+  </a>
+
+<div class="collapse dont-collapse-sm" id="collapseContributing">
+
 Below is a tutorial for contributing code to Beam, covering our tools and typical process in
 detail.
 
 ### Prerequisites
 
-To contribute code, you need
+* a GitHub account
+* a Linux, macOS, or Microsoft Windows development environment with Java JDK 8 installed
+* [Docker](https://www.docker.com/) installed for some tasks including building worker containers and testing this website
+  changes locally
+* [Go](https://golang.org) 1.12 or later installed for Go SDK development
+* Python 3.6, 3.7, and 3.8. Yes, you need all four versions installed.
+
+  pip, setuptools, virtualenv, and tox installed for Python development
+
+* for large contributions, a signed [Individual Contributor License
+  Agreement](https://www.apache.org/licenses/icla.pdf) (ICLA) to the Apache
+  Software Foundation (ASF).
 
- - a GitHub account
- - a Linux, macOS, or Microsoft Windows development environment with Java JDK 8 installed
- - [Docker](https://www.docker.com/) installed for some tasks including building worker containers and testing this website
-   changes locally
- - [Go](https://golang.org) 1.12 or later installed for Go SDK development
- - Python 3.6, 3.7, and 3.8. Yes, you need all three versions installed.
-    - pip, setuptools, virtualenv, and tox installed for Python development
- - for large contributions, a signed [Individual Contributor License
-   Agreement](https://www.apache.org/licenses/icla.pdf) (ICLA) to the Apache
-   Software Foundation (ASF).

Review comment:
       Okay I will adjust the layout to content from website-revamp branch and the community will consider changing it later

##########
File path: website/www/site/content/en/contribute/_index.md
##########
@@ -21,55 +24,61 @@ See the License for the specific language governing permissions and
 limitations under the License.
 -->
 
-# Apache Beam Contribution Guide
+# Contribution guide
+
+<a class="arrow-list-header" data-toggle="collapse" href="#collapseOverview" role="button" aria-expanded="false"        aria-controls="collapseOverview">
+   {{< figure src="/images/arrow-icon_list.svg">}}
+
+## Overview
+
+</a>
+
+<div class="collapse dont-collapse-sm" id="collapseOverview">
 
-The Apache Beam community welcomes contributions from anyone!
+There are lots of opportunities to contribute. You can for example:
 
-If you have questions, please [reach out to the Beam community](/contribute/get-help).
+* ask or answer questions on [user@beam.apache.org](/community/contact-us/) or
+  [stackoverflow](https://stackoverflow.com/questions/tagged/apache-beam)
+* review proposed design ideas on [dev@beam.apache.org](/community/contact-us/)
+* file [bug reports](https://issues.apache.org/jira/projects/BEAM/issues)
+* review [changes](https://github.com/apache/beam/pulls)
+* work on the core programming model (what is a Beam pipeline and how does it
+  run?)
+* improve the developer experience (for example, Windows guides)
+* organize local meetups of users or contributors to Apache Beam
 
-There are lots of opportunities to contribute:
+...and many more. Most importantly, if you have an idea of how to contribute, then do it!

Review comment:
       should be good now

##########
File path: website/www/site/content/en/contribute/_index.md
##########
@@ -21,55 +24,61 @@ See the License for the specific language governing permissions and
 limitations under the License.
 -->
 
-# Apache Beam Contribution Guide
+# Contribution guide
+
+<a class="arrow-list-header" data-toggle="collapse" href="#collapseOverview" role="button" aria-expanded="false"        aria-controls="collapseOverview">
+   {{< figure src="/images/arrow-icon_list.svg">}}
+
+## Overview
+
+</a>
+
+<div class="collapse dont-collapse-sm" id="collapseOverview">
 
-The Apache Beam community welcomes contributions from anyone!
+There are lots of opportunities to contribute. You can for example:
 
-If you have questions, please [reach out to the Beam community](/contribute/get-help).
+* ask or answer questions on [user@beam.apache.org](/community/contact-us/) or
+  [stackoverflow](https://stackoverflow.com/questions/tagged/apache-beam)
+* review proposed design ideas on [dev@beam.apache.org](/community/contact-us/)
+* file [bug reports](https://issues.apache.org/jira/projects/BEAM/issues)
+* review [changes](https://github.com/apache/beam/pulls)
+* work on the core programming model (what is a Beam pipeline and how does it
+  run?)
+* improve the developer experience (for example, Windows guides)
+* organize local meetups of users or contributors to Apache Beam
 
-There are lots of opportunities to contribute:
+...and many more. Most importantly, if you have an idea of how to contribute, then do it!

Review comment:
       hmm weird okay, I will try again, and if without success then I will simply remove it
   

##########
File path: website/www/site/content/en/contribute/_index.md
##########
@@ -21,55 +24,61 @@ See the License for the specific language governing permissions and
 limitations under the License.
 -->
 
-# Apache Beam Contribution Guide
+# Contribution guide
+
+<a class="arrow-list-header" data-toggle="collapse" href="#collapseOverview" role="button" aria-expanded="false"        aria-controls="collapseOverview">
+   {{< figure src="/images/arrow-icon_list.svg">}}

Review comment:
       okay I will check it out

##########
File path: website/www/site/static/js/copy-to-clipboard.js
##########
@@ -0,0 +1,42 @@
+// Licensed under the Apache License, Version 2.0 (the 'License'); you may not
+// use this file except in compliance with the License. You may obtain a copy of
+// the License at
+//
+//   http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an 'AS IS' BASIS, WITHOUT
+// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+// License for the specific language governing permissions and limitations under
+// the License.
+
+$(document).ready(function() {
+    function copy() {
+        $(".copy").click(function(){
+            var text=$(this).siblings()[$(this).siblings().length-1].childNodes[0].innerHTML;
+            const el=document.createElement('textarea');
+            el.value=text;document.body.appendChild(el);
+            el.select();document.execCommand('copy');
+            document.body.removeChild(el);
+            alert('copied to clipboard');
+        })
+        $(".just-copy").click(function(){
+            var text=$(this).parent().siblings()[0].innerHTML;
+            const el=document.createElement('textarea');
+            el.value=text;document.body.appendChild(el);
+            el.select();document.execCommand('copy');
+            document.body.removeChild(el);
+            alert('copied to clipboard');

Review comment:
       From fastest ways I can change it to pop up under a button, but then there would be no popover when user hover on an icon

##########
File path: website/www/site/content/en/contribute/_index.md
##########
@@ -21,55 +24,61 @@ See the License for the specific language governing permissions and
 limitations under the License.
 -->
 
-# Apache Beam Contribution Guide
+# Contribution guide
+
+<a class="arrow-list-header" data-toggle="collapse" href="#collapseOverview" role="button" aria-expanded="false"        aria-controls="collapseOverview">
+   {{< figure src="/images/arrow-icon_list.svg">}}

Review comment:
       It was designed that way because there was less text, so for now I moved the `div` lower




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] TheNeuralBit commented on a change in pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
TheNeuralBit commented on a change in pull request #13565:
URL: https://github.com/apache/beam/pull/13565#discussion_r570325695



##########
File path: website/www/site/content/en/contribute/_index.md
##########
@@ -21,55 +24,61 @@ See the License for the specific language governing permissions and
 limitations under the License.
 -->
 
-# Apache Beam Contribution Guide
+# Contribution guide
+
+<a class="arrow-list-header" data-toggle="collapse" href="#collapseOverview" role="button" aria-expanded="false"        aria-controls="collapseOverview">
+   {{< figure src="/images/arrow-icon_list.svg">}}

Review comment:
       Can you confirm that these expand buttons are working as intended? The behavior seems odd to me.
   On desktop: 
   - [ ] Content is always expanded, no arrow shows up. This could be intentional, but also ...
   - [ ] The headings look like links, and when I hover the underline goes away, but its not actually clickable.
   
   On mobile:
   - [ ] The contributing code section only collapses to down to "To install these in a debian-based distribution"
   - [ ] Clicking the arrows to expand has no effect




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] TheNeuralBit commented on a change in pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
TheNeuralBit commented on a change in pull request #13565:
URL: https://github.com/apache/beam/pull/13565#discussion_r570542870



##########
File path: website/www/site/content/en/contribute/_index.md
##########
@@ -21,55 +24,61 @@ See the License for the specific language governing permissions and
 limitations under the License.
 -->
 
-# Apache Beam Contribution Guide
+# Contribution guide
+
+<a class="arrow-list-header" data-toggle="collapse" href="#collapseOverview" role="button" aria-expanded="false"        aria-controls="collapseOverview">
+   {{< figure src="/images/arrow-icon_list.svg">}}

Review comment:
       Ok the dropdowns seem to be working now. But the second one still only collapses down to "To install these in a debian-based distribution", which doesn't seem correct. That's still part of the Contributing Code section
   
   ![image](https://user-images.githubusercontent.com/675055/106955236-d14f9980-66e9-11eb-9e01-8145654ac1e3.png)
   




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] Jakub-Sadowski commented on a change in pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
Jakub-Sadowski commented on a change in pull request #13565:
URL: https://github.com/apache/beam/pull/13565#discussion_r570331083



##########
File path: website/www/site/content/en/contribute/_index.md
##########
@@ -21,55 +24,61 @@ See the License for the specific language governing permissions and
 limitations under the License.
 -->
 
-# Apache Beam Contribution Guide
+# Contribution guide
+
+<a class="arrow-list-header" data-toggle="collapse" href="#collapseOverview" role="button" aria-expanded="false"        aria-controls="collapseOverview">
+   {{< figure src="/images/arrow-icon_list.svg">}}
+
+## Overview
+
+</a>
+
+<div class="collapse dont-collapse-sm" id="collapseOverview">
 
-The Apache Beam community welcomes contributions from anyone!
+There are lots of opportunities to contribute. You can for example:
 
-If you have questions, please [reach out to the Beam community](/contribute/get-help).
+* ask or answer questions on [user@beam.apache.org](/community/contact-us/) or
+  [stackoverflow](https://stackoverflow.com/questions/tagged/apache-beam)
+* review proposed design ideas on [dev@beam.apache.org](/community/contact-us/)
+* file [bug reports](https://issues.apache.org/jira/projects/BEAM/issues)
+* review [changes](https://github.com/apache/beam/pulls)
+* work on the core programming model (what is a Beam pipeline and how does it
+  run?)
+* improve the developer experience (for example, Windows guides)
+* organize local meetups of users or contributors to Apache Beam
 
-There are lots of opportunities to contribute:
+...and many more. Most importantly, if you have an idea of how to contribute, then do it!
 
- - ask or answer questions on [user@beam.apache.org](/community/contact-us/) or
-[stackoverflow](https://stackoverflow.com/questions/tagged/apache-beam)
- - review proposed design ideas on [dev@beam.apache.org](/community/contact-us/)
- - improve the documentation
- - file [bug reports](https://issues.apache.org/jira/projects/BEAM/issues)
- - test releases
- - review [changes](https://github.com/apache/beam/pulls)
- - write new examples
- - improve your favorite language SDK (Java, Python, Go, etc)
- - improve specific runners (Apache Flink, Apache Spark, Google
-   Cloud Dataflow, etc)
- - improve or add IO connectors
- - add new transform libraries (statistics, ML, image processing, etc)
- - work on the core programming model (what is a Beam pipeline and how does it
-   run?)
- - improve the developer experience (for example, Windows guides)
- - add answers to the [contribution FAQ](
- https://cwiki.apache.org/confluence/display/BEAM/Contributor+FAQ)
- - organize local meetups of users or contributors to Apache Beam
+</div>
 
-Most importantly, if you have an idea of how to contribute, then do it!
+<a class="arrow-list-header" data-toggle="collapse" href="#collapseContributing" role="button" aria-expanded="false" aria-controls="collapseContributing">
+   {{< figure src="/images/arrow-icon_list.svg">}}
 
 ## Contributing code
 
+  </a>
+
+<div class="collapse dont-collapse-sm" id="collapseContributing">
+
 Below is a tutorial for contributing code to Beam, covering our tools and typical process in
 detail.
 
 ### Prerequisites
 
-To contribute code, you need
+* a GitHub account
+* a Linux, macOS, or Microsoft Windows development environment with Java JDK 8 installed
+* [Docker](https://www.docker.com/) installed for some tasks including building worker containers and testing this website
+  changes locally
+* [Go](https://golang.org) 1.12 or later installed for Go SDK development
+* Python 3.6, 3.7, and 3.8. Yes, you need all four versions installed.
+
+  pip, setuptools, virtualenv, and tox installed for Python development
+
+* for large contributions, a signed [Individual Contributor License
+  Agreement](https://www.apache.org/licenses/icla.pdf) (ICLA) to the Apache
+  Software Foundation (ASF).
 
- - a GitHub account
- - a Linux, macOS, or Microsoft Windows development environment with Java JDK 8 installed
- - [Docker](https://www.docker.com/) installed for some tasks including building worker containers and testing this website
-   changes locally
- - [Go](https://golang.org) 1.12 or later installed for Go SDK development
- - Python 3.6, 3.7, and 3.8. Yes, you need all three versions installed.
-    - pip, setuptools, virtualenv, and tox installed for Python development
- - for large contributions, a signed [Individual Contributor License
-   Agreement](https://www.apache.org/licenses/icla.pdf) (ICLA) to the Apache
-   Software Foundation (ASF).

Review comment:
       Okay I will adjust the layout to content from website-revamp branch and the community will consider changing it later




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] Jakub-Sadowski commented on a change in pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
Jakub-Sadowski commented on a change in pull request #13565:
URL: https://github.com/apache/beam/pull/13565#discussion_r570482300



##########
File path: website/www/site/content/en/contribute/_index.md
##########
@@ -21,55 +24,61 @@ See the License for the specific language governing permissions and
 limitations under the License.
 -->
 
-# Apache Beam Contribution Guide
+# Contribution guide
+
+<a class="arrow-list-header" data-toggle="collapse" href="#collapseOverview" role="button" aria-expanded="false"        aria-controls="collapseOverview">
+   {{< figure src="/images/arrow-icon_list.svg">}}

Review comment:
       okay I will check it out




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] Jakub-Sadowski commented on a change in pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
Jakub-Sadowski commented on a change in pull request #13565:
URL: https://github.com/apache/beam/pull/13565#discussion_r570368422



##########
File path: website/www/site/content/en/contribute/_index.md
##########
@@ -21,55 +24,61 @@ See the License for the specific language governing permissions and
 limitations under the License.
 -->
 
-# Apache Beam Contribution Guide
+# Contribution guide
+
+<a class="arrow-list-header" data-toggle="collapse" href="#collapseOverview" role="button" aria-expanded="false"        aria-controls="collapseOverview">
+   {{< figure src="/images/arrow-icon_list.svg">}}
+
+## Overview
+
+</a>
+
+<div class="collapse dont-collapse-sm" id="collapseOverview">
 
-The Apache Beam community welcomes contributions from anyone!
+There are lots of opportunities to contribute. You can for example:
 
-If you have questions, please [reach out to the Beam community](/contribute/get-help).
+* ask or answer questions on [user@beam.apache.org](/community/contact-us/) or
+  [stackoverflow](https://stackoverflow.com/questions/tagged/apache-beam)
+* review proposed design ideas on [dev@beam.apache.org](/community/contact-us/)
+* file [bug reports](https://issues.apache.org/jira/projects/BEAM/issues)
+* review [changes](https://github.com/apache/beam/pulls)
+* work on the core programming model (what is a Beam pipeline and how does it
+  run?)
+* improve the developer experience (for example, Windows guides)
+* organize local meetups of users or contributors to Apache Beam
 
-There are lots of opportunities to contribute:
+...and many more. Most importantly, if you have an idea of how to contribute, then do it!

Review comment:
       should be good now




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] TheNeuralBit commented on a change in pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
TheNeuralBit commented on a change in pull request #13565:
URL: https://github.com/apache/beam/pull/13565#discussion_r570325695



##########
File path: website/www/site/content/en/contribute/_index.md
##########
@@ -21,55 +24,61 @@ See the License for the specific language governing permissions and
 limitations under the License.
 -->
 
-# Apache Beam Contribution Guide
+# Contribution guide
+
+<a class="arrow-list-header" data-toggle="collapse" href="#collapseOverview" role="button" aria-expanded="false"        aria-controls="collapseOverview">
+   {{< figure src="/images/arrow-icon_list.svg">}}

Review comment:
       Can you confirm that these expand buttons are working as intended? The behavior seems odd to me.
   On desktop: 
   - [x] Content is always expanded, no arrow shows up. This could be intentional, but also ...
   - [x] The headings look like links, and when I hover the underline goes away, but its not actually clickable.
   
   On mobile:
   - [ ] The contributing code section only collapses to down to "To install these in a debian-based distribution"
   - [x] Clicking the arrows to expand has no effect




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] TheNeuralBit commented on pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
TheNeuralBit commented on pull request #13565:
URL: https://github.com/apache/beam/pull/13565#issuecomment-747721575


   No worries :) I can still review this one if that's ok with you, I'll have time this afternoon


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] Jakub-Sadowski commented on a change in pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
Jakub-Sadowski commented on a change in pull request #13565:
URL: https://github.com/apache/beam/pull/13565#discussion_r569739127



##########
File path: website/www/site/content/en/contribute/ptransform-style-guide.md
##########
@@ -24,189 +25,192 @@ _A style guide for writers of new reusable PTransforms._
 ## Language-neutral considerations
 
 ### Consistency
+
 Be consistent with prior art:
 
-* Please read the [contribution guide](/contribute/).
-* If there is already a similar transform in some SDK, make the API of your transform similar, so that users' experience with one of them will transfer to the other. This applies to transforms in the same-language SDK and different-language SDKs.
-*Exception:* pre-existing transforms that clearly violate the current style guide for the sole reason that they were developed before this guide was ratified. In this case, the style guide takes priority over consistency with the existing transform.
-* When there is no existing similar transform, stay within what is idiomatic within your language of choice (e.g. Java or Python).
+- Please read the [contribution guide](/contribute/).
+- If there is already a similar transform in some SDK, make the API of your transform similar, so that users' experience with one of them will transfer to the other. This applies to transforms in the same-language SDK and different-language SDKs.
+  _Exception:_ pre-existing transforms that clearly violate the current style guide for the sole reason that they were developed before this guide was ratified. In this case, the style guide takes priority over consistency with the existing transform.
+- When there is no existing similar transform, stay within what is idiomatic within your language of choice (e.g. Java or Python).
 
 ### Exposing a PTransform vs. something else
 
 So you want to develop a library that people will use in their Beam pipelines - a connector to a third-party system, a machine learning algorithm, etc. How should you expose it?
 
 Do:
 
-* Expose every major data-parallel task accomplished by your library as a composite `PTransform`. This allows the structure of the transform to evolve transparently to the code that uses it: e.g. something that started as a `ParDo` can become a more complex transform over time.
-* Expose large, non-trivial, reusable sequential bits of the transform's code, which others might want to reuse in ways you haven't anticipated, as a regular function or class library. The transform should simply wire this logic together. As a side benefit, you can unit-test those functions and classes independently.
-*Example:* when developing a transform that parses files in a custom data format, expose the format parser as a library; likewise for a transform that implements a complex machine learning algorithm, etc.
-* In some cases, this may include Beam-specific classes, such as `CombineFn`, or nontrivial `DoFn`s (those that are more than just a single `@ProcessElement` method).
-As a rule of thumb: expose these if you anticipate that the full packaged `PTransform` may be insufficient for a user's needs and the user may want to reuse the lower-level primitive.
+- Expose every major data-parallel task accomplished by your library as a composite `PTransform`. This allows the structure of the transform to evolve transparently to the code that uses it: e.g. something that started as a `ParDo` can become a more complex transform over time.
+- Expose large, non-trivial, reusable sequential bits of the transform's code, which others might want to reuse in ways you haven't anticipated, as a regular function or class library. The transform should simply wire this logic together. As a side benefit, you can unit-test those functions and classes independently.
+  _Example:_ when developing a transform that parses files in a custom data format, expose the format parser as a library; likewise for a transform that implements a complex machine learning algorithm, etc.
+- In some cases, this may include Beam-specific classes, such as `CombineFn`, or nontrivial `DoFn`s (those that are more than just a single `@ProcessElement` method).
+  As a rule of thumb: expose these if you anticipate that the full packaged `PTransform` may be insufficient for a user's needs and the user may want to reuse the lower-level primitive.
 
 Do not:
 
-* Do not expose the exact way the transform is internally structured. E.g.: the public API surface of your library *usually* (with exception of the last bullet above) should not expose `DoFn`, concrete `Source` or `Sink` classes, etc., in order to avoid presenting users with a confusing choice between applying the `PTransform` or using the `DoFn`/`Source`/`Sink`.
+- Do not expose the exact way the transform is internally structured. E.g.: the public API surface of your library _usually_ (with exception of the last bullet above) should not expose `DoFn`, concrete `Source` or `Sink` classes, etc., in order to avoid presenting users with a confusing choice between applying the `PTransform` or using the `DoFn`/`Source`/`Sink`.
 
 ### Naming
 
 Do:
 
-* Respect language-specific naming conventions, e.g. name classes in `PascalCase` in Java and Python, functions in `camelCase` in Java but `snake_case` in Python, etc.
-* Name factory functions so that either the function name is a verb, or referring to the transform reads like a verb: e.g. `MongoDbIO.read()`, `Flatten.iterables()`.
-* In typed languages, name `PTransform` classes also like verbs (e.g.: `MongoDbIO.Read`, `Flatten.Iterables`).
-* Name families of transforms for interacting with a storage system using the word "IO": `MongoDbIO`, `JdbcIO`.
+- Respect language-specific naming conventions, e.g. name classes in `PascalCase` in Java and Python, functions in `camelCase` in Java but `snake_case` in Python, etc.
+- Name factory functions so that either the function name is a verb, or referring to the transform reads like a verb: e.g. `MongoDbIO.read()`, `Flatten.iterables()`.
+- In typed languages, name `PTransform` classes also like verbs (e.g.: `MongoDbIO.Read`, `Flatten.Iterables`).
+- Name families of transforms for interacting with a storage system using the word "IO": `MongoDbIO`, `JdbcIO`.
 
 Do not:
 
-* Do not use words `transform`, `source`, `sink`, `reader`, `writer`, `bound`, `unbound` in `PTransform` class names (note: `bounded` and `unbounded` are fine when referring to whether a `PCollection` is bounded or unbounded): these words are redundant, confusing, obsolete, or name an existing different concept in the SDK.
+- Do not use words `transform`, `source`, `sink`, `reader`, `writer`, `bound`, `unbound` in `PTransform` class names (note: `bounded` and `unbounded` are fine when referring to whether a `PCollection` is bounded or unbounded): these words are redundant, confusing, obsolete, or name an existing different concept in the SDK.
 
 ### Configuration
 
 #### What goes into configuration vs. input collection
 
-* **Into input `PCollection`:** anything of which there may be a very large number of instances (if there can be >1000 of it, it should be in a `PCollection`), or which is potentially not known at pipeline construction time.
-E.g.: records to be processed or written to a third-party system; filenames to be read.
-Exception: sometimes Beam APIs require things to be known at pipeline construction time - e.g. the `Bounded`/`UnboundedSource` API. If you absolutely have to use such an API, its input can of course go only into transform configuration.
-* **Into transform configuration:** what is constant throughout the transform (including `ValueProvider`s) and does not depend on the contents of the transform's input `PCollection`s.
-E.g.: a database query or connection string; credentials; a user-specified callback; a tuning parameter.
-One advantage of putting a parameter into transform configuration is, it can be validated at pipeline construction time.
+- **Into input `PCollection`:** anything of which there may be a very large number of instances (if there can be >1000 of it, it should be in a `PCollection`), or which is potentially not known at pipeline construction time.
+  E.g.: records to be processed or written to a third-party system; filenames to be read.
+  Exception: sometimes Beam APIs require things to be known at pipeline construction time - e.g. the `Bounded`/`UnboundedSource` API. If you absolutely have to use such an API, its input can of course go only into transform configuration.
+- **Into transform configuration:** what is constant throughout the transform (including `ValueProvider`s) and does not depend on the contents of the transform's input `PCollection`s.
+  E.g.: a database query or connection string; credentials; a user-specified callback; a tuning parameter.
+  One advantage of putting a parameter into transform configuration is, it can be validated at pipeline construction time.
 
 #### What parameters to expose
 
 Do:
 
-* **Expose** parameters that are necessary to compute the output.
+- **Expose** parameters that are necessary to compute the output.
 
 Do not:
 
-* **Do not expose** tuning knobs, such as batch sizes, connection pool sizes, unless it's impossible to automatically supply or compute a good-enough value (i.e., unless you can imagine a reasonable person reporting a bug about the absence of this knob).
-* When developing a connector to a library that has many parameters, **do not mirror each parameter** of the underlying library - if necessary, reuse the underlying library's configuration class and let user supply a whole instance. Example: `JdbcIO`.
-*Exception 1:* if some parameters of the underlying library interact with Beam semantics non-trivially, then expose them. E.g. when developing a connector to a pub/sub system that has a "delivery guarantee" parameter for publishers, expose the parameter but prohibit values incompatible with the Beam model (at-most-once and exactly-once).
-*Exception 2:* if the underlying library's configuration class is cumbersome to use - e.g. does not declare a stable API, exposes problematic transitive dependencies, or does not obey [semantic versioning](https://semver.org/) - in this case, it is better to wrap it and expose a cleaner and more stable API to users of the transform.
+- **Do not expose** tuning knobs, such as batch sizes, connection pool sizes, unless it's impossible to automatically supply or compute a good-enough value (i.e., unless you can imagine a reasonable person reporting a bug about the absence of this knob).
+- When developing a connector to a library that has many parameters, **do not mirror each parameter** of the underlying library - if necessary, reuse the underlying library's configuration class and let user supply a whole instance. Example: `JdbcIO`.
+  _Exception 1:_ if some parameters of the underlying library interact with Beam semantics non-trivially, then expose them. E.g. when developing a connector to a pub/sub system that has a "delivery guarantee" parameter for publishers, expose the parameter but prohibit values incompatible with the Beam model (at-most-once and exactly-once).
+  _Exception 2:_ if the underlying library's configuration class is cumbersome to use - e.g. does not declare a stable API, exposes problematic transitive dependencies, or does not obey [semantic versioning](https://semver.org/) - in this case, it is better to wrap it and expose a cleaner and more stable API to users of the transform.
 
 ### Error handling
 
 #### Transform configuration errors
 
 Detect errors early. Errors can be detected at the following stages:
 
-* (in a compiled language) compilation of the source code of a user's pipeline
-* constructing or setting up the transform
-* applying the transform in a pipeline
-* running the pipeline
+- (in a compiled language) compilation of the source code of a user's pipeline
+- constructing or setting up the transform
+- applying the transform in a pipeline
+- running the pipeline
 
 For example:
 
-* In a typed language, take advantage of compile-time error checking by making the API of the transform strongly-typed:
-    * **Strongly-typed configuration:** e.g. in Java, a parameter that is a URL should use the `URL` class, rather than the `String` class.
-    * **Strongly-typed input and output:** e.g. a transform that writes to Mongo DB should take a `PCollection<Document>` rather than `PCollection<String>` (assuming it is possible to provide a `Coder` for `Document`).
-* Detect invalid values of individual parameters in setter methods.
-* Detect invalid combinations of parameters in the transform's validate method.
+- In a typed language, take advantage of compile-time error checking by making the API of the transform strongly-typed:
+  - **Strongly-typed configuration:** e.g. in Java, a parameter that is a URL should use the `URL` class, rather than the `String` class.
+  - **Strongly-typed input and output:** e.g. a transform that writes to Mongo DB should take a `PCollection<Document>` rather than `PCollection<String>` (assuming it is possible to provide a `Coder` for `Document`).
+- Detect invalid values of individual parameters in setter methods.
+- Detect invalid combinations of parameters in the transform's validate method.
 
 #### Runtime errors and data consistency
 
 Favor data consistency above everything else. Do not mask data loss or corruption. If data loss can't be prevented, fail.
 
 Do:
 
-* In a `DoFn`, retry transient failures if the operation is likely to succeed on retry. Perform such retries at the narrowest scope possible in order to minimize the amount of retried work (i.e. ideally at the level of the RPC library itself, or at the level of directly sending the failing RPC to a third-party system). Otherwise, let the runner retry work at the appropriate level of granularity for you (different runners may have different retry behavior, but most of them do *some* retrying).
-* If the transform has side effects, strive to make them idempotent (i.e. safe to apply multiple times). Due to retries, the side effects may be executed multiple times, possibly in parallel.
-* If the transform can have unprocessable (permanently failing) records and you want the pipeline to proceed despite that:
-    * If bad records are safe to ignore, count the bad records in a metric. Make sure the transform's documentation mentions this aggregator. Beware that there is no programmatic access to reading the aggregator value from inside the pipeline during execution.
-    * If bad records may need manual inspection by the user, emit them into an output that contains only those records.
-    * Alternatively take a (default zero) threshold above which element failures become bundle failures (structure the transform to count the total number of elements and of failed elements, compare them and fail if failures are above the threshold).
-* If the user requests a higher data consistency guarantee than you're able to provide, fail. E.g.: if a user requests QoS 2 (exactly-once delivery) from an MQTT connector, the connector should fail since Beam runners may retry writing to the connector and hence exactly-once delivery can't be done.
+- In a `DoFn`, retry transient failures if the operation is likely to succeed on retry. Perform such retries at the narrowest scope possible in order to minimize the amount of retried work (i.e. ideally at the level of the RPC library itself, or at the level of directly sending the failing RPC to a third-party system). Otherwise, let the runner retry work at the appropriate level of granularity for you (different runners may have different retry behavior, but most of them do _some_ retrying).
+- If the transform has side effects, strive to make them idempotent (i.e. safe to apply multiple times). Due to retries, the side effects may be executed multiple times, possibly in parallel.
+- If the transform can have unprocessable (permanently failing) records and you want the pipeline to proceed despite that:
+  - If bad records are safe to ignore, count the bad records in a metric. Make sure the transform's documentation mentions this aggregator. Beware that there is no programmatic access to reading the aggregator value from inside the pipeline during execution.
+  - If bad records may need manual inspection by the user, emit them into an output that contains only those records.
+  - Alternatively take a (default zero) threshold above which element failures become bundle failures (structure the transform to count the total number of elements and of failed elements, compare them and fail if failures are above the threshold).
+- If the user requests a higher data consistency guarantee than you're able to provide, fail. E.g.: if a user requests QoS 2 (exactly-once delivery) from an MQTT connector, the connector should fail since Beam runners may retry writing to the connector and hence exactly-once delivery can't be done.
 
 Do not:
 
-* If you can't handle a failure, don't even catch it.
-*Exception: *It may be valuable to catch the error, log a message, and rethrow it, if you're able to provide valuable context that the original error doesn't have.
-* Never, ever, ever do this:
-`catch(...)  { log an error; return null or false or otherwise ignore; }`
-**Rule of thumb: if a bundle didn't fail, its output must be correct and complete.**
-For a user, a transform that logged an error but succeeded is silent data loss.
+- If you can't handle a failure, don't even catch it.
+  *Exception: *It may be valuable to catch the error, log a message, and rethrow it, if you're able to provide valuable context that the original error doesn't have.
+- Never, ever, ever do this:
+  `catch(...) { log an error; return null or false or otherwise ignore; }`
+  **Rule of thumb: if a bundle didn't fail, its output must be correct and complete.**
+  For a user, a transform that logged an error but succeeded is silent data loss.
 
 ### Performance
 
 Many runners optimize chains of `ParDo`s in ways that improve performance if the `ParDo`s emit a small to moderate number of elements per input element, or have relatively cheap per-element processing (e.g. Dataflow's "fusion"), but limit parallelization if these assumptions are violated. In that case you may need a "fusion break" (`Reshuffle.of()`) to improve the parallelizability of processing the output `PCollection` of the `ParDo`.
 
-* If the transform includes a `ParDo` that outputs a potentially large number of elements per input element, apply a fusion break after this `ParDo` to make sure downstream transforms can process its output in parallel.
-* If the transform includes a `ParDo` that takes a very long time to process an element, insert a fusion break before this `ParDo` to make sure all or most elements can be processed in parallel regardless of how its input `PCollection` was produced.
+- If the transform includes a `ParDo` that outputs a potentially large number of elements per input element, apply a fusion break after this `ParDo` to make sure downstream transforms can process its output in parallel.
+- If the transform includes a `ParDo` that takes a very long time to process an element, insert a fusion break before this `ParDo` to make sure all or most elements can be processed in parallel regardless of how its input `PCollection` was produced.
 
 ### Documentation
 
 Document how to configure the transform (give code examples), and what guarantees it expects about its input or provides about its output, accounting for the Beam model. E.g.:
 
-* Are the input and output collections of this transform bounded or unbounded, or can it work with either?
-* If the transform writes data to a third-party system, does it guarantee that data will be written at least once? at most once? exactly once? (how does it achieve exactly-once in case the runner executes a bundle multiple times due to retries or speculative execution a.k.a. backups?)
-* If the transform reads data from a third-party system, what's the maximum potential degree of parallelism of the read? E.g., if the transform reads data sequentially (e.g. executes a single SQL query), documentation should mention that.
-* If the transform is querying an external system during processing (e.g. joining a `PCollection` with information from an external key-value store), what are the guarantees on freshness of queried data: e.g. is it all loaded at the beginning of the transform, or queried per-element (in that case, what if data for a single element changes while the transform runs)?
-* If there's a non-trivial relationship between arrival of items in the input `PCollection` and emitting output into the output `PCollection`, what is this relationship? (e.g. if the transform internally does windowing, triggering, grouping, or uses the state or timers API)
+- Are the input and output collections of this transform bounded or unbounded, or can it work with either?
+- If the transform writes data to a third-party system, does it guarantee that data will be written at least once? at most once? exactly once? (how does it achieve exactly-once in case the runner executes a bundle multiple times due to retries or speculative execution a.k.a. backups?)
+- If the transform reads data from a third-party system, what's the maximum potential degree of parallelism of the read? E.g., if the transform reads data sequentially (e.g. executes a single SQL query), documentation should mention that.
+- If the transform is querying an external system during processing (e.g. joining a `PCollection` with information from an external key-value store), what are the guarantees on freshness of queried data: e.g. is it all loaded at the beginning of the transform, or queried per-element (in that case, what if data for a single element changes while the transform runs)?
+- If there's a non-trivial relationship between arrival of items in the input `PCollection` and emitting output into the output `PCollection`, what is this relationship? (e.g. if the transform internally does windowing, triggering, grouping, or uses the state or timers API)
 
 ### Logging
 
 Anticipate abnormal situations that a user of the transform may run into. Log information that they would have found sufficient for debugging, but limit the volume of logging. Here is some advice that applies to all programs, but is especially important when data volume is massive and execution is distributed.
 
 Do:
 
-* When handling an error from a third-party system, log the full error with any error details the third-party system provides about it, and include any additional context the transform knows. This enables the user to take action based on the information provided in the message. When handling an exception and rethrowing your own exception, wrap the original exception in it (some languages offer more advanced facilities, e.g. Java's "suppressed exceptions"). Never silently drop available information about an error.
-* When performing a rare (not per-element) and slow operation (e.g. expanding a large file-pattern, or initiating an import/export job), log when the operation begins and ends. If the operation has an identifier, log the identifier, so the user can look up the operation for later debugging.
-* When computing something low-volume that is critically important for correctness or performance of further processing, log the input and output, so a user in the process of debugging can sanity-check them or reproduce an abnormal result manually.
-E.g. when expanding a filepattern into files, log what the filepattern was and how many parts it was split into; when executing a query, log the query and log how many results it produced.
+- When handling an error from a third-party system, log the full error with any error details the third-party system provides about it, and include any additional context the transform knows. This enables the user to take action based on the information provided in the message. When handling an exception and rethrowing your own exception, wrap the original exception in it (some languages offer more advanced facilities, e.g. Java's "suppressed exceptions"). Never silently drop available information about an error.
+- When performing a rare (not per-element) and slow operation (e.g. expanding a large file-pattern, or initiating an import/export job), log when the operation begins and ends. If the operation has an identifier, log the identifier, so the user can look up the operation for later debugging.
+- When computing something low-volume that is critically important for correctness or performance of further processing, log the input and output, so a user in the process of debugging can sanity-check them or reproduce an abnormal result manually.
+  E.g. when expanding a filepattern into files, log what the filepattern was and how many parts it was split into; when executing a query, log the query and log how many results it produced.
 
 Do not:
 
-* Do not log at `INFO` per element or per bundle. `DEBUG`/`TRACE` may be okay because these levels are disabled by default.
-* Avoid logging data payloads that may contain sensitive information, or sanitize them before logging (e.g. user data, credentials, etc).
+- Do not log at `INFO` per element or per bundle. `DEBUG`/`TRACE` may be okay because these levels are disabled by default.
+- Avoid logging data payloads that may contain sensitive information, or sanitize them before logging (e.g. user data, credentials, etc).
 
 ### Testing
 
 Data processing is tricky, full of corner cases, and difficult to debug, because pipelines take a long time to run, it's hard to check if the output is correct, you can't attach a debugger, and you often can't log as much as you wish to, due to high volume of data. Because of that, testing is particularly important.
 
 #### Testing the transform's run-time behavior
 
-* Unit-test the overall semantics of the transform using `TestPipeline` and `PAssert`. Start with testing against the direct runner. Assertions on `PCollection` contents should be strict: e.g. when a read from a database is expected to read the numbers 1 through 10, assert not just that there are 10 elements in the output `PCollection`, or that each element is in the range [1, 10] - but assert that each number 1 through 10 appears exactly once.
-* Identify non-trivial sequential logic in the transform that is prone to corner cases which are difficult to reliably simulate using a `TestPipeline`, extract this logic into unit-testable functions, and unit-test them. Common corner cases are:
-    * `DoFn`s processing empty bundles
-    * `DoFn`s processing extremely large bundles (contents doesn't fit in memory, including "hot keys" with a very large number of values)
-    * Third-party APIs failing
-    * Third-party APIs providing wildly inaccurate information
-    * Leaks of `Closeable`/`AutoCloseable` resources in failure cases
-    * Common corner cases when developing sources: complicated arithmetic in `BoundedSource.split` (e.g. splitting key or offset ranges), iteration over empty data sources or composite data sources that have some empty components.
-* Mock out the interactions with third-party systems, or better, use ["fake"](https://martinfowler.com/articles/mocksArentStubs.html) implementations when available. Make sure that the mocked-out interactions are representative of all interesting cases of the actual behavior of these systems.
-* To unit test `DoFn`s, `CombineFn`s, and `BoundedSource`s, consider using `DoFnTester`, `CombineFnTester`, and `SourceTestUtils` respectively which can exercise the code in non-trivial ways to flesh out potential bugs.
-* For transforms that work over unbounded collections, test their behavior in the presence of late or out-of-order data using `TestStream`.
-* Tests must pass 100% of the time, including in hostile, CPU- or network-constrained environments (continuous integration servers). Never put timing-dependent code (e.g. sleeps) into tests. Experience shows that no reasonable amount of sleeping is enough - code can be suspended for more than several seconds.
-* For detailed instructions on test code organization, see the [Beam Testing Guide](https://cwiki.apache.org/confluence/display/BEAM/Contribution+Testing+Guide).
+- Unit-test the overall semantics of the transform using `TestPipeline` and `PAssert`. Start with testing against the direct runner. Assertions on `PCollection` contents should be strict: e.g. when a read from a database is expected to read the numbers 1 through 10, assert not just that there are 10 elements in the output `PCollection`, or that each element is in the range [1, 10] - but assert that each number 1 through 10 appears exactly once.
+- Identify non-trivial sequential logic in the transform that is prone to corner cases which are difficult to reliably simulate using a `TestPipeline`, extract this logic into unit-testable functions, and unit-test them. Common corner cases are:
+  - `DoFn`s processing empty bundles
+  - `DoFn`s processing extremely large bundles (contents doesn't fit in memory, including "hot keys" with a very large number of values)
+  - Third-party APIs failing
+  - Third-party APIs providing wildly inaccurate information
+  - Leaks of `Closeable`/`AutoCloseable` resources in failure cases
+  - Common corner cases when developing sources: complicated arithmetic in `BoundedSource.split` (e.g. splitting key or offset ranges), iteration over empty data sources or composite data sources that have some empty components.
+- Mock out the interactions with third-party systems, or better, use ["fake"](https://martinfowler.com/articles/mocksArentStubs.html) implementations when available. Make sure that the mocked-out interactions are representative of all interesting cases of the actual behavior of these systems.
+- To unit test `DoFn`s, `CombineFn`s, and `BoundedSource`s, consider using `DoFnTester`, `CombineFnTester`, and `SourceTestUtils` respectively which can exercise the code in non-trivial ways to flesh out potential bugs.
+- For transforms that work over unbounded collections, test their behavior in the presence of late or out-of-order data using `TestStream`.
+- Tests must pass 100% of the time, including in hostile, CPU- or network-constrained environments (continuous integration servers). Never put timing-dependent code (e.g. sleeps) into tests. Experience shows that no reasonable amount of sleeping is enough - code can be suspended for more than several seconds.
+- For detailed instructions on test code organization, see the [Beam Testing Guide](https://cwiki.apache.org/confluence/display/BEAM/Contribution+Testing+Guide).
 
 #### Testing transform construction and validation
 
 The code for constructing and validating a transform is usually trivial and mostly boilerplate. However, minor mistakes or typos in it can have serious consequences (e.g. ignoring a property that the user has set), so it needs to be tested as well. Yet, an excessive amount of trivial tests can be hard to maintain and give a false impression that the transform is well-tested.
 
 Do:
-* Test non-trivial validation code, where missing/incorrect/uninformative validation may lead to serious problems: data loss, counter-intuitive behavior, value of a property being silently ignored, or other hard-to-debug errors. Create 1 test per non-trivial class of validation error. Some examples of validation that should be tested:
-    * If properties `withFoo()` and `withBar()` cannot both be specified at the same time, test that a transform specifying both of them is rejected, rather than one of the properties being silently ignored at runtime.
-    * If the transform is known to behave incorrectly or counter-intuitively for a particular configuration, test that this configuration is rejected, rather than producing wrong results at runtime. For example, a transform might work properly only for bounded collections, or only for globally-windowed collections. Or, suppose a streaming system supports several levels of "quality of service", one of which is "exactly once delivery". However, a transform that writes to this system might be unable to provide exactly-once due to retries in case of failures. In that case, test that the transform disallows specifying exactly-once QoS, rather than failing to provide the expected end-to-end semantics at runtime.
-* Test that each `withFoo()` method (including each overload) has effect (is not ignored), using `TestPipeline` and `PAssert` to create tests where the expected test results depend on the value of `withFoo()`.
+
+- Test non-trivial validation code, where missing/incorrect/uninformative validation may lead to serious problems: data loss, counter-intuitive behavior, value of a property being silently ignored, or other hard-to-debug errors. Create 1 test per non-trivial class of validation error. Some examples of validation that should be tested:
+  - If properties `withFoo()` and `withBar()` cannot both be specified at the same time, test that a transform specifying both of them is rejected, rather than one of the properties being silently ignored at runtime.
+  - If the transform is known to behave incorrectly or counter-intuitively for a particular configuration, test that this configuration is rejected, rather than producing wrong results at runtime. For example, a transform might work properly only for bounded collections, or only for globally-windowed collections. Or, suppose a streaming system supports several levels of "quality of service", one of which is "exactly once delivery". However, a transform that writes to this system might be unable to provide exactly-once due to retries in case of failures. In that case, test that the transform disallows specifying exactly-once QoS, rather than failing to provide the expected end-to-end semantics at runtime.
+- Test that each `withFoo()` method (including each overload) has effect (is not ignored), using `TestPipeline` and `PAssert` to create tests where the expected test results depend on the value of `withFoo()`.
 
 Do not:
-* Do not test successful validation (e.g. "validation does not fail when the transform is configured correctly")
-* Do not test trivial validation errors (e.g. "validation fails when a property is unset/null/empty/negative/...")
+
+- Do not test successful validation (e.g. "validation does not fail when the transform is configured correctly")
+- Do not test trivial validation errors (e.g. "validation fails when a property is unset/null/empty/negative/...")
 
 ### Compatibility
 
 Do:
 
-* Generally, follow the rules of [semantic versioning](https://semver.org/).
-* If the API of the transform is not yet stable, annotate it as `@Experimental` (Java) or `@experimental` ([Python](https://beam.apache.org/releases/pydoc/{{< param release_latest >}}/apache_beam.utils.annotations.html)).
-* If the API deprecated, annotate it as `@Deprecated` (Java) or `@deprecated` ([Python](https://beam.apache.org/releases/pydoc/{{< param release_latest >}}/apache_beam.utils.annotations.html)).
-* Pay attention to the stability and versioning of third-party classes exposed by the transform's API: if they are unstable or improperly versioned (do not obey [semantic versioning](https://semver.org/)), it is better to wrap them in your own classes.
+- Generally, follow the rules of [semantic versioning](https://semver.org/).
+- If the API of the transform is not yet stable, annotate it as `@Experimental` (Java) or `@experimental` ([Python](https://beam.apache.org/releases/pydoc/{{< param release_latest >}}/apache_beam.utils.annotations.html)).
+- If the API deprecated, annotate it as `@Deprecated` (Java) or `@deprecated` ([Python](https://beam.apache.org/releases/pydoc/{{< param release_latest >}}/apache_beam.utils.annotations.html)).
+- Pay attention to the stability and versioning of third-party classes exposed by the transform's API: if they are unstable or improperly versioned (do not obey [semantic versioning](https://semver.org/)), it is better to wrap them in your own classes.
 
 Do not:
 
-* Do not silently change the behavior of the transform, in a way where code will keep compiling but will do something different than the previously documented behavior (e.g. produce different output or expect different input, of course unless the previous output was incorrect).
-Strive to make such incompatible behavior changes cause a compile error (e.g. it's better to introduce a new transform for a new behavior and deprecate and then delete the old one (in a new major version), than to silently change the behavior of an existing transform), or at least a runtime error.
-* If the behavior of the transform stays the same and you're merely changing implementation or API - do not change API of the transform in a way that will make a user's code stop compiling.

Review comment:
       yeah I'm using option replace all in vs code




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] TheNeuralBit commented on a change in pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
TheNeuralBit commented on a change in pull request #13565:
URL: https://github.com/apache/beam/pull/13565#discussion_r570314467



##########
File path: website/www/site/content/en/contribute/_index.md
##########
@@ -21,55 +24,61 @@ See the License for the specific language governing permissions and
 limitations under the License.
 -->
 
-# Apache Beam Contribution Guide
+# Contribution guide
+
+<a class="arrow-list-header" data-toggle="collapse" href="#collapseOverview" role="button" aria-expanded="false"        aria-controls="collapseOverview">
+   {{< figure src="/images/arrow-icon_list.svg">}}
+
+## Overview
+
+</a>
+
+<div class="collapse dont-collapse-sm" id="collapseOverview">
 
-The Apache Beam community welcomes contributions from anyone!
+There are lots of opportunities to contribute. You can for example:
 
-If you have questions, please [reach out to the Beam community](/contribute/get-help).
+* ask or answer questions on [user@beam.apache.org](/community/contact-us/) or
+  [stackoverflow](https://stackoverflow.com/questions/tagged/apache-beam)
+* review proposed design ideas on [dev@beam.apache.org](/community/contact-us/)
+* file [bug reports](https://issues.apache.org/jira/projects/BEAM/issues)
+* review [changes](https://github.com/apache/beam/pulls)
+* work on the core programming model (what is a Beam pipeline and how does it
+  run?)
+* improve the developer experience (for example, Windows guides)
+* organize local meetups of users or contributors to Apache Beam
 
-There are lots of opportunities to contribute:
+...and many more. Most importantly, if you have an idea of how to contribute, then do it!

Review comment:
       This `...` doesn't render correctly: 
   ![image](https://user-images.githubusercontent.com/675055/106914840-430fef00-66ba-11eb-97c3-17224aaa7016.png)
   

##########
File path: website/www/site/content/en/contribute/_index.md
##########
@@ -21,55 +24,61 @@ See the License for the specific language governing permissions and
 limitations under the License.
 -->
 
-# Apache Beam Contribution Guide
+# Contribution guide
+
+<a class="arrow-list-header" data-toggle="collapse" href="#collapseOverview" role="button" aria-expanded="false"        aria-controls="collapseOverview">
+   {{< figure src="/images/arrow-icon_list.svg">}}
+
+## Overview
+
+</a>
+
+<div class="collapse dont-collapse-sm" id="collapseOverview">
 
-The Apache Beam community welcomes contributions from anyone!
+There are lots of opportunities to contribute. You can for example:
 
-If you have questions, please [reach out to the Beam community](/contribute/get-help).
+* ask or answer questions on [user@beam.apache.org](/community/contact-us/) or
+  [stackoverflow](https://stackoverflow.com/questions/tagged/apache-beam)
+* review proposed design ideas on [dev@beam.apache.org](/community/contact-us/)
+* file [bug reports](https://issues.apache.org/jira/projects/BEAM/issues)
+* review [changes](https://github.com/apache/beam/pulls)
+* work on the core programming model (what is a Beam pipeline and how does it
+  run?)
+* improve the developer experience (for example, Windows guides)
+* organize local meetups of users or contributors to Apache Beam
 
-There are lots of opportunities to contribute:
+...and many more. Most importantly, if you have an idea of how to contribute, then do it!
 
- - ask or answer questions on [user@beam.apache.org](/community/contact-us/) or
-[stackoverflow](https://stackoverflow.com/questions/tagged/apache-beam)
- - review proposed design ideas on [dev@beam.apache.org](/community/contact-us/)
- - improve the documentation
- - file [bug reports](https://issues.apache.org/jira/projects/BEAM/issues)
- - test releases
- - review [changes](https://github.com/apache/beam/pulls)
- - write new examples
- - improve your favorite language SDK (Java, Python, Go, etc)
- - improve specific runners (Apache Flink, Apache Spark, Google
-   Cloud Dataflow, etc)
- - improve or add IO connectors
- - add new transform libraries (statistics, ML, image processing, etc)
- - work on the core programming model (what is a Beam pipeline and how does it
-   run?)
- - improve the developer experience (for example, Windows guides)
- - add answers to the [contribution FAQ](
- https://cwiki.apache.org/confluence/display/BEAM/Contributor+FAQ)
- - organize local meetups of users or contributors to Apache Beam
+</div>
 
-Most importantly, if you have an idea of how to contribute, then do it!
+<a class="arrow-list-header" data-toggle="collapse" href="#collapseContributing" role="button" aria-expanded="false" aria-controls="collapseContributing">
+   {{< figure src="/images/arrow-icon_list.svg">}}
 
 ## Contributing code
 
+  </a>
+
+<div class="collapse dont-collapse-sm" id="collapseContributing">
+
 Below is a tutorial for contributing code to Beam, covering our tools and typical process in
 detail.
 
 ### Prerequisites
 
-To contribute code, you need
+* a GitHub account
+* a Linux, macOS, or Microsoft Windows development environment with Java JDK 8 installed
+* [Docker](https://www.docker.com/) installed for some tasks including building worker containers and testing this website
+  changes locally
+* [Go](https://golang.org) 1.12 or later installed for Go SDK development
+* Python 3.6, 3.7, and 3.8. Yes, you need all four versions installed.
+
+  pip, setuptools, virtualenv, and tox installed for Python development
+
+* for large contributions, a signed [Individual Contributor License
+  Agreement](https://www.apache.org/licenses/icla.pdf) (ICLA) to the Apache
+  Software Foundation (ASF).
 
- - a GitHub account
- - a Linux, macOS, or Microsoft Windows development environment with Java JDK 8 installed
- - [Docker](https://www.docker.com/) installed for some tasks including building worker containers and testing this website
-   changes locally
- - [Go](https://golang.org) 1.12 or later installed for Go SDK development
- - Python 3.6, 3.7, and 3.8. Yes, you need all three versions installed.
-    - pip, setuptools, virtualenv, and tox installed for Python development
- - for large contributions, a signed [Individual Contributor License
-   Agreement](https://www.apache.org/licenses/icla.pdf) (ICLA) to the Apache
-   Software Foundation (ASF).

Review comment:
       Can we just keep this section the same as it was before? The change doesn't seem to be substantive, just changing bullet points.

##########
File path: website/www/site/content/en/contribute/_index.md
##########
@@ -97,16 +107,7 @@ $ export GOPATH=`pwd`/sdks/go/examples/.gogradle/project_gopath
 $ go get github.com/linkedin/goavro
 ```
 
-gLinux users should configure their machines for sudoless Docker.
-
-Alternatively, you can use the Docker based local development environment to wrap your clone of the Beam repo
-into a container meeting the requirements above.
-
-You can start this container using the [start-build-env.sh](https://github.com/apache/beam/blob/master/start-build-env.sh)
-script which is part of the Beam repo:
-```
-./start-build-env.sh
-```

Review comment:
       This section is missing in the new version.

##########
File path: website/www/site/content/en/contribute/_index.md
##########
@@ -21,55 +24,61 @@ See the License for the specific language governing permissions and
 limitations under the License.
 -->
 
-# Apache Beam Contribution Guide
+# Contribution guide
+
+<a class="arrow-list-header" data-toggle="collapse" href="#collapseOverview" role="button" aria-expanded="false"        aria-controls="collapseOverview">
+   {{< figure src="/images/arrow-icon_list.svg">}}

Review comment:
       Can you confirm that these expand buttons are working as intended? The behavior seems odd to me.
   On desktop: 
   - Content is always expanded, no arrow shows up. This could be intentional, but also ...
   - The headings look like links, and when I hover the underline goes away, but its not actually clickable.
   
   On mobile:
   - The contributing code section only collapses to down to "To install these in a debian-based distribution"
   

##########
File path: website/www/site/content/en/contribute/_index.md
##########
@@ -127,173 +128,9 @@ script which is part of the Beam repo:
 1. Assign the issue to yourself. To get the permission to do so, email
    the [dev@ mailing list](/community/contact-us)
    to introduce yourself and to be added as a contributor in the Beam issue tracker including your
-   ASF Jira Username. For example [this welcome email](
-   https://lists.apache.org/thread.html/e6018c2aaf7dc7895091434295e5b0fafe192b975e3e3761fcf0cda7@%3Cdev.beam.apache.org%3E).
+   ASF Jira Username. For example [this welcome email](https://lists.apache.org/thread.html/e6018c2aaf7dc7895091434295e5b0fafe192b975e3e3761fcf0cda7@%3Cdev.beam.apache.org%3E).
 1. If your change is large or it is your first change, it is a good idea to
    [discuss it on the dev@ mailing list](/community/contact-us/).
 1. For large changes create a design doc
    ([template](https://s.apache.org/beam-design-doc-template),
    [examples](https://s.apache.org/beam-design-docs)) and email it to the [dev@ mailing list](/community/contact-us).
-
-### Development Setup {#development-setup}
-
-1. If you need help with git forking, cloning, branching, committing, pull requests, and squashing commits, see
-   [Git workflow tips](https://cwiki.apache.org/confluence/display/BEAM/Git+Tips)
-1. Familiarize yourself with gradle and the project structure. At the root of the git repository, run:

Review comment:
       I don't think that's a good idea. Before we remove a completele remove a section there should be a discussion on the mailing list to make sure the community agrees this section isn't valuable.
   
   Could you leave it in for now? We can file a follow-up jira to consider removing it.




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] TheNeuralBit commented on a change in pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
TheNeuralBit commented on a change in pull request #13565:
URL: https://github.com/apache/beam/pull/13565#discussion_r568261897



##########
File path: website/www/site/content/en/blog/adding-data-sources-to-sql.md
##########
@@ -81,19 +81,19 @@ The `TableProvider` classes are under
 
 Our table provider looks like this:
 
-{{< highlight java >}}
+{{< highlight language="java" >}}
 @AutoService(TableProvider.class)
 public class GenerateSequenceTableProvider extends InMemoryMetaTableProvider {
 
-  @Override
-  public String getTableType() {
-    return "sequence";
-  }
+@Override
+public String getTableType() {
+return "sequence";
+}
 
-  @Override
-  public BeamSqlTable buildBeamSqlTable(Table table) {
-    return new GenerateSequenceTable(table);
-  }
+@Override
+public BeamSqlTable buildBeamSqlTable(Table table) {
+return new GenerateSequenceTable(table);
+}

Review comment:
       I don't think we should be making changes to a blog post's contents. It looks like you've made changes to a lot of blog posts to remove leading whitespace in code snippets.
   
   Are these changes something you did while you were experimenting? Can they be reverted?




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] Jakub-Sadowski commented on a change in pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
Jakub-Sadowski commented on a change in pull request #13565:
URL: https://github.com/apache/beam/pull/13565#discussion_r568415151



##########
File path: website/www/site/content/en/blog/adding-data-sources-to-sql.md
##########
@@ -81,19 +81,19 @@ The `TableProvider` classes are under
 
 Our table provider looks like this:
 
-{{< highlight java >}}
+{{< highlight language="java" >}}
 @AutoService(TableProvider.class)
 public class GenerateSequenceTableProvider extends InMemoryMetaTableProvider {
 
-  @Override
-  public String getTableType() {
-    return "sequence";
-  }
+@Override
+public String getTableType() {
+return "sequence";
+}
 
-  @Override
-  public BeamSqlTable buildBeamSqlTable(Table table) {
-    return new GenerateSequenceTable(table);
-  }
+@Override
+public BeamSqlTable buildBeamSqlTable(Table table) {
+return new GenerateSequenceTable(table);
+}

Review comment:
       Yeah, I spotted this later on and turned off the formatter.
   About ``` I changed it to `<< highlight >>`, because new code snippet has copy option and wanted to add this to every code 

##########
File path: website/www/site/content/en/blog/adding-data-sources-to-sql.md
##########
@@ -81,19 +81,19 @@ The `TableProvider` classes are under
 
 Our table provider looks like this:
 
-{{< highlight java >}}
+{{< highlight language="java" >}}
 @AutoService(TableProvider.class)
 public class GenerateSequenceTableProvider extends InMemoryMetaTableProvider {
 
-  @Override
-  public String getTableType() {
-    return "sequence";
-  }
+@Override
+public String getTableType() {
+return "sequence";
+}
 
-  @Override
-  public BeamSqlTable buildBeamSqlTable(Table table) {
-    return new GenerateSequenceTable(table);
-  }
+@Override
+public BeamSqlTable buildBeamSqlTable(Table table) {
+return new GenerateSequenceTable(table);
+}

Review comment:
       the content in each file in documentation wasn't changed, only this code snippets were changed




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] Jakub-Sadowski commented on a change in pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
Jakub-Sadowski commented on a change in pull request #13565:
URL: https://github.com/apache/beam/pull/13565#discussion_r569451325



##########
File path: website/www/site/layouts/shortcodes/highlight.html
##########
@@ -12,20 +12,36 @@
 
 {{ $content := (trim .Inner "\n\r") | htmlUnescape | safeHTML }}
 {{ $ctx := . }}
-{{ with (.Get "class") }}
-    <div class={{ . }}>
-        {{ with ($ctx.Get "lang") }}
+{{ $py := .Get "py" }}
+{{ with (.Get "language") }}
+    <div class='{{ printf "language-%s" . }} snippet'>
+        <div class="notebook-skip code-snippet">
+            {{ with $py }}
+                <a target="_blank" type="button" data-bs-toggle="tooltip" data-bs-placement="bottom" title="Run code" href="https://colab.research.google.com/github/{{ $ctx.Site.Params.branch_repo }}/{{ $ctx.Get `notebook` }}-py.ipynb">
+                    <img src="/images/run-icon.svg"/>
+                </a>
+                <a target="_blank" type="button" data-bs-toggle="tooltip" data-bs-placement="bottom" title="View source code" href="https://github.com/{{ $ctx.Site.Params.branch_repo }}/{{ $ctx.Get `py` }}">
+                    <img src="/images/code-icon.svg"/>
+                </a>
+                <a class="copy" type="button" data-bs-toggle="tooltip" data-bs-placement="bottom" title="Copy to clipboard">
+                    <img src="/images/copy-icon.svg"/>
+                </a>
+            {{ else }}
+                <a class="copy" type="button" data-bs-toggle="tooltip" data-bs-placement="bottom" title="Copy to clipboard">
+                    <img src="/images/copy-icon.svg"/>
+                </a>
+            {{ end }}
             {{ highlight $content . "" }}
-        {{ else }}
-            {{ highlight $content "" "" }}
-        {{ end }}
+        </div>
     </div>
 {{ else }}
-    {{ with (.Get 0) }}
-        <div class={{ printf "language-%s" . }}>
-            {{ highlight $content . "" }}
+    <div class="snippet">
+        <div class="notebook-skip code-snippet without_switcher">
+            <a class="copy" type="button" data-bs-toggle="tooltip" data-bs-placement="bottom" title="Copy to clipboard">
+                <img src="/images/copy-icon.svg"/>
+            </a>
+            {{ highlight $content "" "" }}
         </div>
-    {{ else }}
-        {{ highlight $content "" "" }}
-    {{ end }}
+    </div>

Review comment:
       I deleted the gray line at the top, the gap is not visible anymore. and about the space, it's necessary because in some cases there are 3 buttons and the text could overlay them, using code fences is an exception and there we don't have this space




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] pabloem commented on pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
pabloem commented on pull request #13565:
URL: https://github.com/apache/beam/pull/13565#issuecomment-747690412


   ouch - thanks Brian!


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] TheNeuralBit commented on a change in pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
TheNeuralBit commented on a change in pull request #13565:
URL: https://github.com/apache/beam/pull/13565#discussion_r570413800



##########
File path: website/www/site/content/en/blog/beam-2.22.0.md
##########
@@ -18,7 +18,7 @@ See the License for the specific language governing permissions and
 limitations under the License.
 -->
 We are happy to present the new 2.22.0 release of Beam. This release includes both improvements and new functionality.
-See the [download page](/get-started/downloads/#2220-2020-06-08) for this release.<!--more-->
+See the [download page](/get-started/downloads/#2220-2020-06-08) for this release.

Review comment:
       It looks like you have restored all the blog posts (except for a weird whitespace change in the 2.13.0 post). But there's still a lot of other files that have recent changes backed out. See contribute/release-guide.md, dsls/sql/overview.md, documentation/io/built-in/google-bigquery.md, documentation/io/built-in/snowflake.md, documentation/programming-guide.md, get-started/downloads.md, get-started/quickstart-java.md




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] Jakub-Sadowski commented on a change in pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
Jakub-Sadowski commented on a change in pull request #13565:
URL: https://github.com/apache/beam/pull/13565#discussion_r567325006



##########
File path: website/www/site/content/en/contribute/_index.md
##########
@@ -83,217 +76,136 @@ sudo apt-get install \
    docker-ce
 ```
 
-On some systems (like Ubuntu 20.04) these need to be installed also
-```
-pip3 install grpcio-tools mypy-protobuf
-```

Review comment:
       I will change all contents manually at monday and tuesday, and I will try to remember to keep it.

##########
File path: website/www/site/content/en/contribute/_index.md
##########
@@ -58,20 +51,20 @@ detail.
 
 ### Prerequisites
 
-To contribute code, you need
+- a GitHub account
+- a Linux, macOS, or Microsoft Windows development environment with Java JDK 8 installed
+- [Docker](https://www.docker.com/) installed for some tasks including building worker containers and testing this website
+  changes locally
+- [Go](https://golang.org) 1.12 or later installed for Go SDK development
+- Python 3.6, 3.7, and 3.8. Yes, you need all four versions installed.
+
+  pip, setuptools, virtualenv, and tox installed for Python development
 
- - a GitHub account
- - a Linux, macOS, or Microsoft Windows development environment with Java JDK 8 installed
- - [Docker](https://www.docker.com/) installed for some tasks including building worker containers and testing this website
-   changes locally
- - [Go](https://golang.org) 1.12 or later installed for Go SDK development
- - Python 3.6, 3.7, and 3.8. Yes, you need all three versions installed.
-    - pip, setuptools, virtualenv, and tox installed for Python development
- - for large contributions, a signed [Individual Contributor License
-   Agreement](https://www.apache.org/licenses/icla.pdf) (ICLA) to the Apache
-   Software Foundation (ASF).
+- for large contributions, a signed [Individual Contributor License
+  Agreement](https://www.apache.org/licenses/icla.pdf) (ICLA) to the Apache
+  Software Foundation (ASF).
 
-To install these in a Debian-based distribution:

Review comment:
       I will change all contents manually at monday and tuesday, and I will try to remember to keep it.




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] pabloem commented on pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
pabloem commented on pull request #13565:
URL: https://github.com/apache/beam/pull/13565#issuecomment-747723998


   Sounds good. I'll leave it to you - but let me know if you'd like me to
   review it.
   
   On Thu, Dec 17, 2020 at 1:47 PM Brian Hulette <no...@github.com>
   wrote:
   
   > No worries :) I can still review this one if that's ok with you, I'll have
   > time this afternoon
   >
   > —
   > You are receiving this because your review was requested.
   > Reply to this email directly, view it on GitHub
   > <https://github.com/apache/beam/pull/13565#issuecomment-747721575>, or
   > unsubscribe
   > <https://github.com/notifications/unsubscribe-auth/AAJ5Z3EEL5E6DIA2RS2BWDDSVJ35FANCNFSM4U5YXXCA>
   > .
   >
   


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] Jakub-Sadowski commented on a change in pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
Jakub-Sadowski commented on a change in pull request #13565:
URL: https://github.com/apache/beam/pull/13565#discussion_r549293921



##########
File path: website/www/site/content/en/contribute/_index.md
##########
@@ -21,57 +22,65 @@ See the License for the specific language governing permissions and
 limitations under the License.
 -->
 
-# Apache Beam Contribution Guide
+# Contribution guide
+
+</br>
+
+<div class="arrow-lists-desktop">
+
+## Overview
 
-The Apache Beam community welcomes contributions from anyone!
+</br>
 
-If you have questions, please [reach out to the Beam community](/contribute/get-help).
+There are lots of opportunities to contribute. You can for example:
 
-There are lots of opportunities to contribute:
+<div class="arrow-list">
 
- - ask or answer questions on [user@beam.apache.org](/community/contact-us/) or
-[stackoverflow](https://stackoverflow.com/questions/tagged/apache-beam)
- - review proposed design ideas on [dev@beam.apache.org](/community/contact-us/)
- - improve the documentation
- - file [bug reports](https://issues.apache.org/jira/projects/BEAM/issues)
- - test releases
- - review [changes](https://github.com/apache/beam/pulls)
- - write new examples
- - improve your favorite language SDK (Java, Python, Go, etc)
- - improve specific runners (Apache Flink, Apache Spark, Google
-   Cloud Dataflow, etc)
- - improve or add IO connectors
- - add new transform libraries (statistics, ML, image processing, etc)
- - work on the core programming model (what is a Beam pipeline and how does it
-   run?)
- - improve the developer experience (for example, Windows guides)
- - add answers to the [contribution FAQ](
- https://cwiki.apache.org/confluence/display/BEAM/Contributor+FAQ)
- - organize local meetups of users or contributors to Apache Beam
+- ask or answer questions on [user@beam.apache.org](/community/contact-us/) or
+  [stackoverflow](https://stackoverflow.com/questions/tagged/apache-beam)
+- review proposed design ideas on [dev@beam.apache.org](/community/contact-us/)
+- file [bug reports](https://issues.apache.org/jira/projects/BEAM/issues)
+- review [changes](https://github.com/apache/beam/pulls)
+- work on the core programming model (what is a Beam pipeline and how does it
+  run?)
+- improve the developer experience (for example, Windows guides)
+- organize local meetups of users or contributors to Apache Beam
 
-Most importantly, if you have an idea of how to contribute, then do it!
+</div>
+
+...and many more. Most importantly, if you have an idea of how to contribute, then do it!
+
+</br>
 
 ## Contributing code
 
+</br>
+
 Below is a tutorial for contributing code to Beam, covering our tools and typical process in
 detail.
 
+</br>
+
 ### Prerequisites
 
-To contribute code, you need
+<div class="arrow-list">
+
+- a GitHub account
+- a Linux, macOS, or Microsoft Windows development environment with Java JDK 8 installed
+- [Docker](https://www.docker.com/) installed for some tasks including building worker containers and testing this website
+  changes locally
+- [Go](https://golang.org) 1.12 or later installed for Go SDK development
+- Python 3.6, 3.7, and 3.8. Yes, you need all four versions installed.
+
+  pip, setuptools, virtualenv, and tox installed for Python development
+
+- for large contributions, a signed [Individual Contributor License
+  Agreement](https://www.apache.org/licenses/icla.pdf) (ICLA) to the Apache
+  Software Foundation (ASF).
 
- - a GitHub account
- - a Linux, macOS, or Microsoft Windows development environment with Java JDK 8 installed
- - [Docker](https://www.docker.com/) installed for some tasks including building worker containers and testing this website
-   changes locally
- - [Go](https://golang.org) 1.12 or later installed for Go SDK development
- - Python 3.6, 3.7, and 3.8. Yes, you need all three versions installed.
-    - pip, setuptools, virtualenv, and tox installed for Python development
- - for large contributions, a signed [Individual Contributor License
-   Agreement](https://www.apache.org/licenses/icla.pdf) (ICLA) to the Apache
-   Software Foundation (ASF).
+</div>

Review comment:
       I pushed version with one wrapper setting arrow lists




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] TheNeuralBit commented on a change in pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
TheNeuralBit commented on a change in pull request #13565:
URL: https://github.com/apache/beam/pull/13565#discussion_r569557620



##########
File path: website/www/site/layouts/shortcodes/highlight.html
##########
@@ -12,20 +12,36 @@
 
 {{ $content := (trim .Inner "\n\r") | htmlUnescape | safeHTML }}
 {{ $ctx := . }}
-{{ with (.Get "class") }}
-    <div class={{ . }}>
-        {{ with ($ctx.Get "lang") }}
+{{ $py := .Get "py" }}
+{{ with (.Get "language") }}
+    <div class='{{ printf "language-%s" . }} snippet'>
+        <div class="notebook-skip code-snippet">
+            {{ with $py }}
+                <a target="_blank" type="button" data-bs-toggle="tooltip" data-bs-placement="bottom" title="Run code" href="https://colab.research.google.com/github/{{ $ctx.Site.Params.branch_repo }}/{{ $ctx.Get `notebook` }}-py.ipynb">
+                    <img src="/images/run-icon.svg"/>
+                </a>
+                <a target="_blank" type="button" data-bs-toggle="tooltip" data-bs-placement="bottom" title="View source code" href="https://github.com/{{ $ctx.Site.Params.branch_repo }}/{{ $ctx.Get `py` }}">
+                    <img src="/images/code-icon.svg"/>
+                </a>
+                <a class="copy" type="button" data-bs-toggle="tooltip" data-bs-placement="bottom" title="Copy to clipboard">
+                    <img src="/images/copy-icon.svg"/>
+                </a>
+            {{ else }}
+                <a class="copy" type="button" data-bs-toggle="tooltip" data-bs-placement="bottom" title="Copy to clipboard">
+                    <img src="/images/copy-icon.svg"/>
+                </a>
+            {{ end }}
             {{ highlight $content . "" }}
-        {{ else }}
-            {{ highlight $content "" "" }}
-        {{ end }}
+        </div>
     </div>
 {{ else }}
-    {{ with (.Get 0) }}
-        <div class={{ printf "language-%s" . }}>
-            {{ highlight $content . "" }}
+    <div class="snippet">
+        <div class="notebook-skip code-snippet without_switcher">
+            <a class="copy" type="button" data-bs-toggle="tooltip" data-bs-placement="bottom" title="Copy to clipboard">
+                <img src="/images/copy-icon.svg"/>
+            </a>
+            {{ highlight $content "" "" }}
         </div>
-    {{ else }}
-        {{ highlight $content "" "" }}
-    {{ end }}
+    </div>

Review comment:
       Ok that makes sense.




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] TheNeuralBit commented on a change in pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
TheNeuralBit commented on a change in pull request #13565:
URL: https://github.com/apache/beam/pull/13565#discussion_r547528687



##########
File path: website/www/site/content/en/contribute/become-a-committer.md
##########
@@ -15,83 +16,31 @@ See the License for the specific language governing permissions and
 limitations under the License.
 -->
 
-# Become a Committer
-
-An Apache Beam
-[committer](https://www.apache.org/foundation/how-it-works.html#committers) has
-write access to the repository for merging pull requests, but you don't have
-to be a code contributor to become a committer. Becoming a committer means that
-you have the project's trust. Read the [ASF
-documentation](https://www.apache.org/dev/committers.html#committer-responsibilities)
-for more about being a committer in the Apache Software Foundation.
-
-The [PMC](https://www.apache.org/foundation/how-it-works.html#pmc-members)
-makes someone a committer via nomination, discussion, and then majority vote.
-We use data from as many sources as possible to inform our reasoning. Here are
-some examples:
-
- - [dev@ archives](https://lists.apache.org/list.html?dev@beam.apache.org) and [statistics](https://lists.apache.org/trends.html?dev@beam.apache.org)
- - [user@ archives](https://lists.apache.org/list.html?user@beam.apache.org) and [statistics](https://lists.apache.org/trends.html?user@beam.apache.org)
- - [`apache-beam` StackOverflow tag](https://stackoverflow.com/questions/tagged/apache-beam)
- - Git metrics for [Beam](https://github.com/apache/beam/graphs/contributors)
- - Code reviews given and received on
-   [Beam](https://github.com/apache/beam/pulls)
- - Clear areas of ownership (a runner, a DSL, IO connector, documentation,
-   etc.)
- - Public events
- - Firsthand PMC testimonials
-
-The PMC has assembled the following set of guidelines for becoming a committer.
-
-## An Apache Beam committer...
-
-### Takes many forms
-
-There are many actions other than coding that build the trust we place in a
-committer - code review, design discussion, user support, community outreach, improving
-infrastructure, documentation, project management, etc.
-
-### Knows, upholds, and reinforces the Apache Software Foundation code of conduct
-
-See the [ASF
-documentation](https://www.apache.org/foundation/policies/conduct.html). In
-particular, they manifestly strive to:
-
- - Be open
- - Be empathetic
- - Be welcoming
- - Be friendly
- - Be patient
- - Be collaborative
- - Be inquisitive
- - Be careful in the words that they choose
-
-### Knows, upholds, and reinforces the responsibilities of an Apache Software Foundation committer
-
-See the [ASF documentation](https://www.apache.org/dev/committers.html#committer-responsibilities).
-
- - They help create a product that will outlive the interest of any particular
-   volunteer (including themselves)
- - They grow and maintain the health of the Apache community
- - They help out with surrounding work, such as the website & documentation
- - They help users
- - They can be trusted to decide when code is ready for release, or when to ask
-   someone else to make the judgment
- - They can be trusted to decide when to merge code (if a code contributor) or
-   when to ask someone else to make the judgment
-
-### Knows, upholds, and reinforces the Beam community’s practices
-
- - They have a proven commitment to the project
- - They share their intentions with the community
- - They accept and integrate community feedback in their plans, designs,
-   code, etc.
- - They earnestly try to make Beam better with their contributions
- - In particular, if a code contributor:
-   - They earnestly try to make Beam better with their own code
-   - They earnestly try to make Beam better with code review
-   - They accept and integrate feedback on their code
-   - They know, follow, and enforce Beam’s practices while
-     reviewing/merging code - style, documentation, testing, backward
-     compatibility, etc.
+# Become a Beam Committer
+
+</br>
+
+An Apache Beam [committer](https://www.apache.org/foundation/how-it-works.html#committers) takes many forms. There are many actions other than coding that build the trust we place in a committer - code review, design discussion, user support, community outreach, improving infrastructure, documentation, project management, etc.
+
+</br>
+
+### What does it mean being a commiter?

Review comment:
       Thanks!




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] TheNeuralBit commented on a change in pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
TheNeuralBit commented on a change in pull request #13565:
URL: https://github.com/apache/beam/pull/13565#discussion_r570400686



##########
File path: website/www/site/content/en/contribute/_index.md
##########
@@ -21,55 +24,61 @@ See the License for the specific language governing permissions and
 limitations under the License.
 -->
 
-# Apache Beam Contribution Guide
+# Contribution guide
+
+<a class="arrow-list-header" data-toggle="collapse" href="#collapseOverview" role="button" aria-expanded="false"        aria-controls="collapseOverview">
+   {{< figure src="/images/arrow-icon_list.svg">}}
+
+## Overview
+
+</a>
+
+<div class="collapse dont-collapse-sm" id="collapseOverview">
 
-The Apache Beam community welcomes contributions from anyone!
+There are lots of opportunities to contribute. You can for example:
 
-If you have questions, please [reach out to the Beam community](/contribute/get-help).
+* ask or answer questions on [user@beam.apache.org](/community/contact-us/) or
+  [stackoverflow](https://stackoverflow.com/questions/tagged/apache-beam)
+* review proposed design ideas on [dev@beam.apache.org](/community/contact-us/)
+* file [bug reports](https://issues.apache.org/jira/projects/BEAM/issues)
+* review [changes](https://github.com/apache/beam/pulls)
+* work on the core programming model (what is a Beam pipeline and how does it
+  run?)
+* improve the developer experience (for example, Windows guides)
+* organize local meetups of users or contributors to Apache Beam
 
-There are lots of opportunities to contribute:
+...and many more. Most importantly, if you have an idea of how to contribute, then do it!
 
- - ask or answer questions on [user@beam.apache.org](/community/contact-us/) or
-[stackoverflow](https://stackoverflow.com/questions/tagged/apache-beam)
- - review proposed design ideas on [dev@beam.apache.org](/community/contact-us/)
- - improve the documentation
- - file [bug reports](https://issues.apache.org/jira/projects/BEAM/issues)
- - test releases
- - review [changes](https://github.com/apache/beam/pulls)
- - write new examples
- - improve your favorite language SDK (Java, Python, Go, etc)
- - improve specific runners (Apache Flink, Apache Spark, Google
-   Cloud Dataflow, etc)
- - improve or add IO connectors
- - add new transform libraries (statistics, ML, image processing, etc)
- - work on the core programming model (what is a Beam pipeline and how does it
-   run?)
- - improve the developer experience (for example, Windows guides)
- - add answers to the [contribution FAQ](
- https://cwiki.apache.org/confluence/display/BEAM/Contributor+FAQ)
- - organize local meetups of users or contributors to Apache Beam
+</div>
 
-Most importantly, if you have an idea of how to contribute, then do it!
+<a class="arrow-list-header" data-toggle="collapse" href="#collapseContributing" role="button" aria-expanded="false" aria-controls="collapseContributing">
+   {{< figure src="/images/arrow-icon_list.svg">}}
 
 ## Contributing code
 
+  </a>
+
+<div class="collapse dont-collapse-sm" id="collapseContributing">
+
 Below is a tutorial for contributing code to Beam, covering our tools and typical process in
 detail.
 
 ### Prerequisites
 
-To contribute code, you need
+* a GitHub account
+* a Linux, macOS, or Microsoft Windows development environment with Java JDK 8 installed
+* [Docker](https://www.docker.com/) installed for some tasks including building worker containers and testing this website
+  changes locally
+* [Go](https://golang.org) 1.12 or later installed for Go SDK development
+* Python 3.6, 3.7, and 3.8. Yes, you need all four versions installed.
+
+  pip, setuptools, virtualenv, and tox installed for Python development
+
+* for large contributions, a signed [Individual Contributor License
+  Agreement](https://www.apache.org/licenses/icla.pdf) (ICLA) to the Apache
+  Software Foundation (ASF).
 
- - a GitHub account
- - a Linux, macOS, or Microsoft Windows development environment with Java JDK 8 installed
- - [Docker](https://www.docker.com/) installed for some tasks including building worker containers and testing this website
-   changes locally
- - [Go](https://golang.org) 1.12 or later installed for Go SDK development
- - Python 3.6, 3.7, and 3.8. Yes, you need all three versions installed.
-    - pip, setuptools, virtualenv, and tox installed for Python development
- - for large contributions, a signed [Individual Contributor License
-   Agreement](https://www.apache.org/licenses/icla.pdf) (ICLA) to the Apache
-   Software Foundation (ASF).

Review comment:
       Thank you




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] Jakub-Sadowski commented on a change in pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
Jakub-Sadowski commented on a change in pull request #13565:
URL: https://github.com/apache/beam/pull/13565#discussion_r567324949



##########
File path: website/www/site/content/en/contribute/_index.md
##########
@@ -83,217 +76,136 @@ sudo apt-get install \
    docker-ce
 ```
 
-On some systems (like Ubuntu 20.04) these need to be installed also
-```
-pip3 install grpcio-tools mypy-protobuf
-```
+</br>
 
 You also need to [install Go](https://golang.org/doc/install).
 
+</br>
+
 Once Go is installed, install goavro:
 
+</br>
+
 ```
 $ export GOPATH=`pwd`/sdks/go/examples/.gogradle/project_gopath
 $ go get github.com/linkedin/goavro
 ```
 
-gLinux users should configure their machines for sudoless Docker.
-
-Alternatively, you can use the Docker based local development environment to wrap your clone of the Beam repo
-into a container meeting the requirements above.
-
-You can start this container using the [start-build-env.sh](https://github.com/apache/beam/blob/master/start-build-env.sh)
-script which is part of the Beam repo:
-```
-./start-build-env.sh
-```
-
-### Connect With the Beam community
-
-1. Consider subscribing to the [dev@ mailing list](/community/contact-us/), especially
-   if you plan to make more than one change or the change will be large. All decisions happen on the
-   public dev list.
-1. (Optionally) Join the [#beam channel of the ASF slack](/community/contact-us/).
-1. Create an account on [Beam issue tracker (JIRA)](https://issues.apache.org/jira/projects/BEAM/issues)
-   (anyone can do this).
-
-### Share your intent
-
-1. Find or create an issue in the [Beam issue tracker (JIRA)](https://issues.apache.org/jira/projects/BEAM/issues).
-   Tracking your work in an issue will avoid duplicated or conflicting work, and provide
-   a place for notes. Later, your pull request will be linked to the issue as well.
-1. If you want to get involved but don't have a project in mind, check our list of open starter tasks,
-   [https://s.apache.org/beam-starter-tasks](https://s.apache.org/beam-starter-tasks).
-1. Assign the issue to yourself. To get the permission to do so, email
-   the [dev@ mailing list](/community/contact-us)
-   to introduce yourself and to be added as a contributor in the Beam issue tracker including your
-   ASF Jira Username. For example [this welcome email](
-   https://lists.apache.org/thread.html/e6018c2aaf7dc7895091434295e5b0fafe192b975e3e3761fcf0cda7@%3Cdev.beam.apache.org%3E).
-1. If your change is large or it is your first change, it is a good idea to
-   [discuss it on the dev@ mailing list](/community/contact-us/).
-1. For large changes create a design doc
-   ([template](https://s.apache.org/beam-design-doc-template),
-   [examples](https://s.apache.org/beam-design-docs)) and email it to the [dev@ mailing list](/community/contact-us).
-
-### Development Setup
-
-1. If you need help with git forking, cloning, branching, committing, pull requests, and squashing commits, see
-   [Git workflow tips](https://cwiki.apache.org/confluence/display/BEAM/Git+Tips)
-1. Familiarize yourself with gradle and the project structure. At the root of the git repository, run:
-
-       $ ./gradlew projects
-
-   Examine the available tasks in a project. For the default set of tasks, use:
-
-       $ ./gradlew tasks
-
-   For a given module, use:
-
-       $ ./gradlew -p sdks/java/io/cassandra tasks
-
-    For an exhaustive list of tasks, use:
-
-       $ ./gradlew tasks --all
-
-1. Make sure you can build and run tests
-
-    Run the entire set of tests with:
+</br>
 
-       $ ./gradlew check
+Linux users should configure their machines for sudoless Docker.
 
-   You can limit testing to a particular module. Gradle will build just the necessary things to run those tests. For example:
+</div>
 
-       $ ./gradlew -p sdks/go check
-       $ ./gradlew -p sdks/java/io/cassandra check
-       $ ./gradlew -p runners/flink check
+<div class="arrow-lists-mobile">
 
-1. Now you may want to set up your preferred IDE and other aspects of your development
-   environment. See the Developers' wiki for tips, guides, and FAQs on:
-   - [IntelliJ](https://cwiki.apache.org/confluence/display/BEAM/Using+IntelliJ+IDE)
-   - [Java](https://cwiki.apache.org/confluence/display/BEAM/Java+Tips)
-   - [Python](https://cwiki.apache.org/confluence/display/BEAM/Python+Tips)
-   - [Go](https://cwiki.apache.org/confluence/display/BEAM/Go+Tips)
-   - [Website](https://cwiki.apache.org/confluence/display/BEAM/Website+Tips)
-   - [Gradle](https://cwiki.apache.org/confluence/display/BEAM/Gradle+Tips)
-   - [Jenkins](https://cwiki.apache.org/confluence/display/BEAM/Jenkins+Tips)
-   - [FAQ](https://cwiki.apache.org/confluence/display/BEAM/Contributor+FAQ)
+ <a class="arrow-list-header" data-toggle="collapse" href="#collapseOverview" role="button" aria-expanded="false" aria-controls="collapseOverview">
+  {{< figure src="/images/arrow-icon_list.svg">}}
 
-### Make your change
+Overview
 
-1. Make your code change. Every source file needs to include the Apache license header. Every new dependency needs to
-   have an open source license [compatible](https://www.apache.org/legal/resolved.html#criteria) with Apache.
+  </a>
 
-1. Add unit tests for your change.
+<div class="collapse" id="collapseOverview">
 
-1. Use descriptive commit messages that make it easy to identify changes and provide a clear history.
+There are lots of opportunities to contribute. You can for example:
 
-1. When your change is ready to be reviewed and merged, create a pull request.
+- ask or answer questions on [user@beam.apache.org](/community/contact-us/) or
+  [stackoverflow](https://stackoverflow.com/questions/tagged/apache-beam)
+- review proposed design ideas on [dev@beam.apache.org](/community/contact-us/)
+- file [bug reports](https://issues.apache.org/jira/projects/BEAM/issues)
+- review [changes](https://github.com/apache/beam/pulls)
+- work on the core programming model (what is a Beam pipeline and how does it
+  run?)
+- improve the developer experience (for example, Windows guides)
+- organize local meetups of users or contributors to Apache Beam
 
-1. Format commit messages and the pull request title like `[BEAM-XXX] Fixes bug in ApproximateQuantiles`,
-   where you replace BEAM-XXX with the appropriate JIRA issue.
-   This will automatically link the pull request to the issue.
+...and many more. Most importantly, if you have an idea of how to contribute, then do it!
 
-1. The pull request and any changes pushed to it will trigger [pre-commit
-   jobs](https://cwiki.apache.org/confluence/display/BEAM/Contribution+Testing+Guide#ContributionTestingGuide-Pre-commit). If a test fails and appears unrelated to your
-   change, you can cause tests to be re-run by adding a single line comment on your
-   PR
+</div>
 
-        retest this please
+<a class="arrow-list-header" data-toggle="collapse" href="#collapseContributing" role="button" aria-expanded="false" aria-controls="collapseContributing">
+   {{< figure src="/images/arrow-icon_list.svg">}}
 
-   Pull request template has a link to a [catalog of trigger phrases](https://github.com/apache/beam/blob/master/.test-infra/jenkins/README.md)
-   that start various post-commit tests suites. Use these sparingly because post-commit tests consume shared development resources.
+Contributing code
 
-1. Pull requests can only be merged by a
-   [Beam committer](https://home.apache.org/phonebook.html?pmc=beam).
-   To find a committer for your area, either:
-    - look in the OWNERS file of the directory where you changed files, or
-    - look for similar code merges, or
-    - ask on [dev@beam.apache.org](/community/contact-us/)
+  </a>
 
-   Use `R: @username` in the pull request to notify a reviewer.
+<div class="collapse" id="collapseContributing">
 
-1. If you don't get any response in 3 business days, email the [dev@ mailing list](/community/contact-us) to ask for someone to look at your pull
-   request.
-
-### Make the reviewer's job easier
-
-1. Provide context for your changes in the associated JIRA issue and/or PR description.
-
-1. Avoid huge mega-changes.
-
-1. Review feedback typically leads to follow-up changes. It is easier to review follow-up changes when they are added as additional "fixup" commits to the
-   existing PR/branch. This allows reviewer(s) to track the incremental progress and focus on new changes,
-   and keeps comment threads attached to the code.
-   Please refrain from squashing new commits into reviewed commits before review is completed.
-   Because squashing reviewed and unreviewed commits often makes it harder to
-   see the the difference between the review iterations, reviewers may ask you to unsquash new changes.
-
-1. After review is complete and the PR is accepted, fixup commits should be squashed (see [Git workflow tips](https://cwiki.apache.org/confluence/display/BEAM/Git+Tips)).
-   Beam committers [can squash](https://beam.apache.org/contribute/committer-guide/#merging-it)
-   all commits in the PR during merge, however if a PR has a mixture of independent changes that should not be squashed, and fixup commits,
-   then the PR author should help squashing fixup commits to maintain a clean commmit history.
-
-## When will my change show up in an Apache Beam release?
-
-Apache Beam makes minor releases every 6 weeks. Apache Beam has a
-[calendar](https://calendar.google.com/calendar/embed?src=0p73sl034k80oob7seouanigd0%40group.calendar.google.com) for
-cutting the next release branch. Your change needs to be checked into master before the release branch is cut
-to make the next release.
-
-## Stale pull requests
+Below is a tutorial for contributing code to Beam, covering our tools and typical process in
+detail.
 
-The community will close stale pull requests in order to keep the project
-healthy. A pull request becomes stale after its author fails to respond to
-actionable comments for 60 days.  Author of a closed pull request is welcome to
-reopen the same pull request again in the future. The associated JIRAs will be
-unassigned from the author but will stay open.
+- a GitHub account
+- a Linux, macOS, or Microsoft Windows development environment with Java JDK 8 installed
+- [Docker](https://www.docker.com/) installed for some tasks including building worker containers and testing this website
+  changes locally
+- [Go](https://golang.org) 1.12 or later installed for Go SDK development
+- Python 3.6, 3.7, and 3.8. Yes, you need all four versions installed.
 
-## Accounts and Permissions
+  pip, setuptools, virtualenv, and tox installed for Python development
 
-- [Beam issue tracker (JIRA)](https://issues.apache.org/jira/projects/BEAM/issues):
-  Anyone can access it and browse issues. Anyone can register an account and login
-  to create issues or add comments. Only contributors can be assigned issues. If
-  you want to be assigned issues, a PMC member can add you to the project contributor
-  group.  Email the [dev@ mailing list](/community/contact-us)
-  to ask to be added as a contributor in the Beam issue tracker, and include your ASF Jira username.
+- for large contributions, a signed [Individual Contributor License
+  Agreement](https://www.apache.org/licenses/icla.pdf) (ICLA) to the Apache
+  Software Foundation (ASF).
 
-- [Beam Wiki Space](https://cwiki.apache.org/confluence/display/BEAM/Apache+Beam):
-  Anyone has read access. If you wish to contribute changes, please create an account and request edit access on the
-  [dev@ mailing list](/community/contact-us) (include your Wiki account user ID).
+</div>
 
-- Pull requests can only be merged by a
-  [Beam committer](https://home.apache.org/phonebook.html?pmc=beam).
+</br>
 
-- [Voting on a release](https://www.apache.org/foundation/voting.html): Everyone can vote. Only
-  [Beam PMC](https://home.apache.org/phonebook.html?pmc=beam) members should mark their votes as binding.
+```
+sudo apt-get install \
+   openjdk-8-jdk \
+   python-setuptools \
+   python-pip \
+   virtualenv \
+   tox \
+   docker-ce
+```
 
-## Communication
+</br>
 
-All communication is expected to align with the [Code of Conduct](https://www.apache.org/foundation/policies/conduct).
+You also need to [install Go](https://golang.org/doc/install).
 
-Discussion about contributing code to Beam happens on the [dev@ mailing list](/community/contact-us/). Introduce yourself!
+</br>
 
-Questions can be asked on the [#beam channel of the ASF slack](/community/contact-us/). Introduce yourself!
+Once Go is installed, install goavro:
 
-## Additional resources
+</br>
 
-If you are contributing a `PTransform` to Beam, we have an extensive
-[PTransform Style Guide](/contribute/ptransform-style-guide).
+```
+$ export GOPATH=`pwd`/sdks/go/examples/.gogradle/project_gopath
+$ go get github.com/linkedin/goavro
+```
 
-If you are contributing a Runner to Beam, refer to the
-[Runner authoring guide](/contribute/runner-guide/)
+</br>
 
-Review [design documents](https://s.apache.org/beam-design-docs).
+Linux users should configure their machines for sudoless Docker.
 
-A great way to contribute is to join an existing effort. For the most
-intensive efforts, check out the [roadmap](/roadmap/).
+</div>

Review comment:
       It's not duplicated anymore




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] Jakub-Sadowski commented on a change in pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
Jakub-Sadowski commented on a change in pull request #13565:
URL: https://github.com/apache/beam/pull/13565#discussion_r570832279



##########
File path: website/www/site/content/en/contribute/_index.md
##########
@@ -21,55 +24,61 @@ See the License for the specific language governing permissions and
 limitations under the License.
 -->
 
-# Apache Beam Contribution Guide
+# Contribution guide
+
+<a class="arrow-list-header" data-toggle="collapse" href="#collapseOverview" role="button" aria-expanded="false"        aria-controls="collapseOverview">
+   {{< figure src="/images/arrow-icon_list.svg">}}

Review comment:
       It was designed that way because there was less text, so for now I moved the `div` lower




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] TheNeuralBit commented on a change in pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
TheNeuralBit commented on a change in pull request #13565:
URL: https://github.com/apache/beam/pull/13565#discussion_r547554855



##########
File path: website/www/site/content/en/contribute/_index.md
##########
@@ -21,57 +22,65 @@ See the License for the specific language governing permissions and
 limitations under the License.
 -->
 
-# Apache Beam Contribution Guide
+# Contribution guide
+
+</br>
+
+<div class="arrow-lists-desktop">
+
+## Overview
 
-The Apache Beam community welcomes contributions from anyone!
+</br>
 
-If you have questions, please [reach out to the Beam community](/contribute/get-help).
+There are lots of opportunities to contribute. You can for example:
 
-There are lots of opportunities to contribute:
+<div class="arrow-list">
 
- - ask or answer questions on [user@beam.apache.org](/community/contact-us/) or
-[stackoverflow](https://stackoverflow.com/questions/tagged/apache-beam)
- - review proposed design ideas on [dev@beam.apache.org](/community/contact-us/)
- - improve the documentation
- - file [bug reports](https://issues.apache.org/jira/projects/BEAM/issues)
- - test releases
- - review [changes](https://github.com/apache/beam/pulls)
- - write new examples
- - improve your favorite language SDK (Java, Python, Go, etc)
- - improve specific runners (Apache Flink, Apache Spark, Google
-   Cloud Dataflow, etc)
- - improve or add IO connectors
- - add new transform libraries (statistics, ML, image processing, etc)
- - work on the core programming model (what is a Beam pipeline and how does it
-   run?)
- - improve the developer experience (for example, Windows guides)
- - add answers to the [contribution FAQ](
- https://cwiki.apache.org/confluence/display/BEAM/Contributor+FAQ)
- - organize local meetups of users or contributors to Apache Beam
+- ask or answer questions on [user@beam.apache.org](/community/contact-us/) or
+  [stackoverflow](https://stackoverflow.com/questions/tagged/apache-beam)
+- review proposed design ideas on [dev@beam.apache.org](/community/contact-us/)
+- file [bug reports](https://issues.apache.org/jira/projects/BEAM/issues)
+- review [changes](https://github.com/apache/beam/pulls)
+- work on the core programming model (what is a Beam pipeline and how does it
+  run?)
+- improve the developer experience (for example, Windows guides)
+- organize local meetups of users or contributors to Apache Beam
 
-Most importantly, if you have an idea of how to contribute, then do it!
+</div>
+
+...and many more. Most importantly, if you have an idea of how to contribute, then do it!
+
+</br>
 
 ## Contributing code
 
+</br>
+
 Below is a tutorial for contributing code to Beam, covering our tools and typical process in
 detail.
 
+</br>
+
 ### Prerequisites
 
-To contribute code, you need
+<div class="arrow-list">
+
+- a GitHub account
+- a Linux, macOS, or Microsoft Windows development environment with Java JDK 8 installed
+- [Docker](https://www.docker.com/) installed for some tasks including building worker containers and testing this website
+  changes locally
+- [Go](https://golang.org) 1.12 or later installed for Go SDK development
+- Python 3.6, 3.7, and 3.8. Yes, you need all four versions installed.
+
+  pip, setuptools, virtualenv, and tox installed for Python development
+
+- for large contributions, a signed [Individual Contributor License
+  Agreement](https://www.apache.org/licenses/icla.pdf) (ICLA) to the Apache
+  Software Foundation (ASF).
 
- - a GitHub account
- - a Linux, macOS, or Microsoft Windows development environment with Java JDK 8 installed
- - [Docker](https://www.docker.com/) installed for some tasks including building worker containers and testing this website
-   changes locally
- - [Go](https://golang.org) 1.12 or later installed for Go SDK development
- - Python 3.6, 3.7, and 3.8. Yes, you need all three versions installed.
-    - pip, setuptools, virtualenv, and tox installed for Python development
- - for large contributions, a signed [Individual Contributor License
-   Agreement](https://www.apache.org/licenses/icla.pdf) (ICLA) to the Apache
-   Software Foundation (ASF).
+</div>

Review comment:
       Whoops yes I meant the contribution guide, sorry about that.




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] TheNeuralBit commented on a change in pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
TheNeuralBit commented on a change in pull request #13565:
URL: https://github.com/apache/beam/pull/13565#discussion_r547528622



##########
File path: website/www/site/content/en/contribute/_index.md
##########
@@ -21,57 +22,65 @@ See the License for the specific language governing permissions and
 limitations under the License.
 -->
 
-# Apache Beam Contribution Guide
+# Contribution guide
+
+</br>
+
+<div class="arrow-lists-desktop">
+
+## Overview
 
-The Apache Beam community welcomes contributions from anyone!
+</br>
 
-If you have questions, please [reach out to the Beam community](/contribute/get-help).
+There are lots of opportunities to contribute. You can for example:
 
-There are lots of opportunities to contribute:
+<div class="arrow-list">
 
- - ask or answer questions on [user@beam.apache.org](/community/contact-us/) or
-[stackoverflow](https://stackoverflow.com/questions/tagged/apache-beam)
- - review proposed design ideas on [dev@beam.apache.org](/community/contact-us/)
- - improve the documentation
- - file [bug reports](https://issues.apache.org/jira/projects/BEAM/issues)
- - test releases
- - review [changes](https://github.com/apache/beam/pulls)
- - write new examples
- - improve your favorite language SDK (Java, Python, Go, etc)
- - improve specific runners (Apache Flink, Apache Spark, Google
-   Cloud Dataflow, etc)
- - improve or add IO connectors
- - add new transform libraries (statistics, ML, image processing, etc)
- - work on the core programming model (what is a Beam pipeline and how does it
-   run?)
- - improve the developer experience (for example, Windows guides)
- - add answers to the [contribution FAQ](
- https://cwiki.apache.org/confluence/display/BEAM/Contributor+FAQ)
- - organize local meetups of users or contributors to Apache Beam
+- ask or answer questions on [user@beam.apache.org](/community/contact-us/) or
+  [stackoverflow](https://stackoverflow.com/questions/tagged/apache-beam)
+- review proposed design ideas on [dev@beam.apache.org](/community/contact-us/)
+- file [bug reports](https://issues.apache.org/jira/projects/BEAM/issues)
+- review [changes](https://github.com/apache/beam/pulls)
+- work on the core programming model (what is a Beam pipeline and how does it
+  run?)
+- improve the developer experience (for example, Windows guides)
+- organize local meetups of users or contributors to Apache Beam
 
-Most importantly, if you have an idea of how to contribute, then do it!
+</div>
+
+...and many more. Most importantly, if you have an idea of how to contribute, then do it!
+
+</br>
 
 ## Contributing code
 
+</br>
+
 Below is a tutorial for contributing code to Beam, covering our tools and typical process in
 detail.
 
+</br>
+
 ### Prerequisites
 
-To contribute code, you need
+<div class="arrow-list">
+
+- a GitHub account
+- a Linux, macOS, or Microsoft Windows development environment with Java JDK 8 installed
+- [Docker](https://www.docker.com/) installed for some tasks including building worker containers and testing this website
+  changes locally
+- [Go](https://golang.org) 1.12 or later installed for Go SDK development
+- Python 3.6, 3.7, and 3.8. Yes, you need all four versions installed.
+
+  pip, setuptools, virtualenv, and tox installed for Python development
+
+- for large contributions, a signed [Individual Contributor License
+  Agreement](https://www.apache.org/licenses/icla.pdf) (ICLA) to the Apache
+  Software Foundation (ASF).
 
- - a GitHub account
- - a Linux, macOS, or Microsoft Windows development environment with Java JDK 8 installed
- - [Docker](https://www.docker.com/) installed for some tasks including building worker containers and testing this website
-   changes locally
- - [Go](https://golang.org) 1.12 or later installed for Go SDK development
- - Python 3.6, 3.7, and 3.8. Yes, you need all three versions installed.
-    - pip, setuptools, virtualenv, and tox installed for Python development
- - for large contributions, a signed [Individual Contributor License
-   Agreement](https://www.apache.org/licenses/icla.pdf) (ICLA) to the Apache
-   Software Foundation (ASF).
+</div>

Review comment:
       I feel very strongly that we shouldn't be making changes to the website content in the `website-revamp` branch. If we do that, we're back in the same predicament that we had with the switch to hugo where we had to pause changes to the website to avoid merge conflicts.
   
   @bntnam you mentioned in an offline conversation that if content changes were required you would have a plan for it - do you have any suggestions here?




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] TheNeuralBit commented on a change in pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
TheNeuralBit commented on a change in pull request #13565:
URL: https://github.com/apache/beam/pull/13565#discussion_r570314467



##########
File path: website/www/site/content/en/contribute/_index.md
##########
@@ -21,55 +24,61 @@ See the License for the specific language governing permissions and
 limitations under the License.
 -->
 
-# Apache Beam Contribution Guide
+# Contribution guide
+
+<a class="arrow-list-header" data-toggle="collapse" href="#collapseOverview" role="button" aria-expanded="false"        aria-controls="collapseOverview">
+   {{< figure src="/images/arrow-icon_list.svg">}}
+
+## Overview
+
+</a>
+
+<div class="collapse dont-collapse-sm" id="collapseOverview">
 
-The Apache Beam community welcomes contributions from anyone!
+There are lots of opportunities to contribute. You can for example:
 
-If you have questions, please [reach out to the Beam community](/contribute/get-help).
+* ask or answer questions on [user@beam.apache.org](/community/contact-us/) or
+  [stackoverflow](https://stackoverflow.com/questions/tagged/apache-beam)
+* review proposed design ideas on [dev@beam.apache.org](/community/contact-us/)
+* file [bug reports](https://issues.apache.org/jira/projects/BEAM/issues)
+* review [changes](https://github.com/apache/beam/pulls)
+* work on the core programming model (what is a Beam pipeline and how does it
+  run?)
+* improve the developer experience (for example, Windows guides)
+* organize local meetups of users or contributors to Apache Beam
 
-There are lots of opportunities to contribute:
+...and many more. Most importantly, if you have an idea of how to contribute, then do it!

Review comment:
       This `...` doesn't render correctly: 
   ![image](https://user-images.githubusercontent.com/675055/106914840-430fef00-66ba-11eb-97c3-17224aaa7016.png)
   

##########
File path: website/www/site/content/en/contribute/_index.md
##########
@@ -21,55 +24,61 @@ See the License for the specific language governing permissions and
 limitations under the License.
 -->
 
-# Apache Beam Contribution Guide
+# Contribution guide
+
+<a class="arrow-list-header" data-toggle="collapse" href="#collapseOverview" role="button" aria-expanded="false"        aria-controls="collapseOverview">
+   {{< figure src="/images/arrow-icon_list.svg">}}
+
+## Overview
+
+</a>
+
+<div class="collapse dont-collapse-sm" id="collapseOverview">
 
-The Apache Beam community welcomes contributions from anyone!
+There are lots of opportunities to contribute. You can for example:
 
-If you have questions, please [reach out to the Beam community](/contribute/get-help).
+* ask or answer questions on [user@beam.apache.org](/community/contact-us/) or
+  [stackoverflow](https://stackoverflow.com/questions/tagged/apache-beam)
+* review proposed design ideas on [dev@beam.apache.org](/community/contact-us/)
+* file [bug reports](https://issues.apache.org/jira/projects/BEAM/issues)
+* review [changes](https://github.com/apache/beam/pulls)
+* work on the core programming model (what is a Beam pipeline and how does it
+  run?)
+* improve the developer experience (for example, Windows guides)
+* organize local meetups of users or contributors to Apache Beam
 
-There are lots of opportunities to contribute:
+...and many more. Most importantly, if you have an idea of how to contribute, then do it!
 
- - ask or answer questions on [user@beam.apache.org](/community/contact-us/) or
-[stackoverflow](https://stackoverflow.com/questions/tagged/apache-beam)
- - review proposed design ideas on [dev@beam.apache.org](/community/contact-us/)
- - improve the documentation
- - file [bug reports](https://issues.apache.org/jira/projects/BEAM/issues)
- - test releases
- - review [changes](https://github.com/apache/beam/pulls)
- - write new examples
- - improve your favorite language SDK (Java, Python, Go, etc)
- - improve specific runners (Apache Flink, Apache Spark, Google
-   Cloud Dataflow, etc)
- - improve or add IO connectors
- - add new transform libraries (statistics, ML, image processing, etc)
- - work on the core programming model (what is a Beam pipeline and how does it
-   run?)
- - improve the developer experience (for example, Windows guides)
- - add answers to the [contribution FAQ](
- https://cwiki.apache.org/confluence/display/BEAM/Contributor+FAQ)
- - organize local meetups of users or contributors to Apache Beam
+</div>
 
-Most importantly, if you have an idea of how to contribute, then do it!
+<a class="arrow-list-header" data-toggle="collapse" href="#collapseContributing" role="button" aria-expanded="false" aria-controls="collapseContributing">
+   {{< figure src="/images/arrow-icon_list.svg">}}
 
 ## Contributing code
 
+  </a>
+
+<div class="collapse dont-collapse-sm" id="collapseContributing">
+
 Below is a tutorial for contributing code to Beam, covering our tools and typical process in
 detail.
 
 ### Prerequisites
 
-To contribute code, you need
+* a GitHub account
+* a Linux, macOS, or Microsoft Windows development environment with Java JDK 8 installed
+* [Docker](https://www.docker.com/) installed for some tasks including building worker containers and testing this website
+  changes locally
+* [Go](https://golang.org) 1.12 or later installed for Go SDK development
+* Python 3.6, 3.7, and 3.8. Yes, you need all four versions installed.
+
+  pip, setuptools, virtualenv, and tox installed for Python development
+
+* for large contributions, a signed [Individual Contributor License
+  Agreement](https://www.apache.org/licenses/icla.pdf) (ICLA) to the Apache
+  Software Foundation (ASF).
 
- - a GitHub account
- - a Linux, macOS, or Microsoft Windows development environment with Java JDK 8 installed
- - [Docker](https://www.docker.com/) installed for some tasks including building worker containers and testing this website
-   changes locally
- - [Go](https://golang.org) 1.12 or later installed for Go SDK development
- - Python 3.6, 3.7, and 3.8. Yes, you need all three versions installed.
-    - pip, setuptools, virtualenv, and tox installed for Python development
- - for large contributions, a signed [Individual Contributor License
-   Agreement](https://www.apache.org/licenses/icla.pdf) (ICLA) to the Apache
-   Software Foundation (ASF).

Review comment:
       Can we just keep this section the same as it was before? The change doesn't seem to be substantive, just changing bullet points.

##########
File path: website/www/site/content/en/contribute/_index.md
##########
@@ -97,16 +107,7 @@ $ export GOPATH=`pwd`/sdks/go/examples/.gogradle/project_gopath
 $ go get github.com/linkedin/goavro
 ```
 
-gLinux users should configure their machines for sudoless Docker.
-
-Alternatively, you can use the Docker based local development environment to wrap your clone of the Beam repo
-into a container meeting the requirements above.
-
-You can start this container using the [start-build-env.sh](https://github.com/apache/beam/blob/master/start-build-env.sh)
-script which is part of the Beam repo:
-```
-./start-build-env.sh
-```

Review comment:
       This section is missing in the new version.

##########
File path: website/www/site/content/en/contribute/_index.md
##########
@@ -21,55 +24,61 @@ See the License for the specific language governing permissions and
 limitations under the License.
 -->
 
-# Apache Beam Contribution Guide
+# Contribution guide
+
+<a class="arrow-list-header" data-toggle="collapse" href="#collapseOverview" role="button" aria-expanded="false"        aria-controls="collapseOverview">
+   {{< figure src="/images/arrow-icon_list.svg">}}

Review comment:
       Can you confirm that these expand buttons are working as intended? The behavior seems odd to me.
   On desktop: 
   - Content is always expanded, no arrow shows up. This could be intentional, but also ...
   - The headings look like links, and when I hover the underline goes away, but its not actually clickable.
   
   On mobile:
   - The contributing code section only collapses to down to "To install these in a debian-based distribution"
   

##########
File path: website/www/site/content/en/contribute/_index.md
##########
@@ -127,173 +128,9 @@ script which is part of the Beam repo:
 1. Assign the issue to yourself. To get the permission to do so, email
    the [dev@ mailing list](/community/contact-us)
    to introduce yourself and to be added as a contributor in the Beam issue tracker including your
-   ASF Jira Username. For example [this welcome email](
-   https://lists.apache.org/thread.html/e6018c2aaf7dc7895091434295e5b0fafe192b975e3e3761fcf0cda7@%3Cdev.beam.apache.org%3E).
+   ASF Jira Username. For example [this welcome email](https://lists.apache.org/thread.html/e6018c2aaf7dc7895091434295e5b0fafe192b975e3e3761fcf0cda7@%3Cdev.beam.apache.org%3E).
 1. If your change is large or it is your first change, it is a good idea to
    [discuss it on the dev@ mailing list](/community/contact-us/).
 1. For large changes create a design doc
    ([template](https://s.apache.org/beam-design-doc-template),
    [examples](https://s.apache.org/beam-design-docs)) and email it to the [dev@ mailing list](/community/contact-us).
-
-### Development Setup {#development-setup}
-
-1. If you need help with git forking, cloning, branching, committing, pull requests, and squashing commits, see
-   [Git workflow tips](https://cwiki.apache.org/confluence/display/BEAM/Git+Tips)
-1. Familiarize yourself with gradle and the project structure. At the root of the git repository, run:

Review comment:
       I don't think that's a good idea. Before we remove a completele remove a section there should be a discussion on the mailing list to make sure the community agrees this section isn't valuable.
   
   Could you leave it in for now? We can file a follow-up jira to consider removing it.

##########
File path: website/www/site/content/en/contribute/_index.md
##########
@@ -21,55 +24,61 @@ See the License for the specific language governing permissions and
 limitations under the License.
 -->
 
-# Apache Beam Contribution Guide
+# Contribution guide
+
+<a class="arrow-list-header" data-toggle="collapse" href="#collapseOverview" role="button" aria-expanded="false"        aria-controls="collapseOverview">
+   {{< figure src="/images/arrow-icon_list.svg">}}
+
+## Overview
+
+</a>
+
+<div class="collapse dont-collapse-sm" id="collapseOverview">
 
-The Apache Beam community welcomes contributions from anyone!
+There are lots of opportunities to contribute. You can for example:
 
-If you have questions, please [reach out to the Beam community](/contribute/get-help).
+* ask or answer questions on [user@beam.apache.org](/community/contact-us/) or
+  [stackoverflow](https://stackoverflow.com/questions/tagged/apache-beam)
+* review proposed design ideas on [dev@beam.apache.org](/community/contact-us/)
+* file [bug reports](https://issues.apache.org/jira/projects/BEAM/issues)
+* review [changes](https://github.com/apache/beam/pulls)
+* work on the core programming model (what is a Beam pipeline and how does it
+  run?)
+* improve the developer experience (for example, Windows guides)
+* organize local meetups of users or contributors to Apache Beam
 
-There are lots of opportunities to contribute:
+...and many more. Most importantly, if you have an idea of how to contribute, then do it!

Review comment:
       It still looks the same to me

##########
File path: website/www/site/content/en/contribute/_index.md
##########
@@ -21,55 +24,61 @@ See the License for the specific language governing permissions and
 limitations under the License.
 -->
 
-# Apache Beam Contribution Guide
+# Contribution guide
+
+<a class="arrow-list-header" data-toggle="collapse" href="#collapseOverview" role="button" aria-expanded="false"        aria-controls="collapseOverview">
+   {{< figure src="/images/arrow-icon_list.svg">}}

Review comment:
       Can you confirm that these expand buttons are working as intended? The behavior seems odd to me.
   On desktop: 
   - [ ] Content is always expanded, no arrow shows up. This could be intentional, but also ...
   - [ ] The headings look like links, and when I hover the underline goes away, but its not actually clickable.
   
   On mobile:
   - [ ] The contributing code section only collapses to down to "To install these in a debian-based distribution"
   - [ ] Clicking the arrows to expand has no effect

##########
File path: website/www/site/content/en/contribute/_index.md
##########
@@ -21,55 +24,61 @@ See the License for the specific language governing permissions and
 limitations under the License.
 -->
 
-# Apache Beam Contribution Guide
+# Contribution guide
+
+<a class="arrow-list-header" data-toggle="collapse" href="#collapseOverview" role="button" aria-expanded="false"        aria-controls="collapseOverview">
+   {{< figure src="/images/arrow-icon_list.svg">}}
+
+## Overview
+
+</a>
+
+<div class="collapse dont-collapse-sm" id="collapseOverview">
 
-The Apache Beam community welcomes contributions from anyone!
+There are lots of opportunities to contribute. You can for example:
 
-If you have questions, please [reach out to the Beam community](/contribute/get-help).
+* ask or answer questions on [user@beam.apache.org](/community/contact-us/) or
+  [stackoverflow](https://stackoverflow.com/questions/tagged/apache-beam)
+* review proposed design ideas on [dev@beam.apache.org](/community/contact-us/)
+* file [bug reports](https://issues.apache.org/jira/projects/BEAM/issues)
+* review [changes](https://github.com/apache/beam/pulls)
+* work on the core programming model (what is a Beam pipeline and how does it
+  run?)
+* improve the developer experience (for example, Windows guides)
+* organize local meetups of users or contributors to Apache Beam
 
-There are lots of opportunities to contribute:
+...and many more. Most importantly, if you have an idea of how to contribute, then do it!
 
- - ask or answer questions on [user@beam.apache.org](/community/contact-us/) or
-[stackoverflow](https://stackoverflow.com/questions/tagged/apache-beam)
- - review proposed design ideas on [dev@beam.apache.org](/community/contact-us/)
- - improve the documentation
- - file [bug reports](https://issues.apache.org/jira/projects/BEAM/issues)
- - test releases
- - review [changes](https://github.com/apache/beam/pulls)
- - write new examples
- - improve your favorite language SDK (Java, Python, Go, etc)
- - improve specific runners (Apache Flink, Apache Spark, Google
-   Cloud Dataflow, etc)
- - improve or add IO connectors
- - add new transform libraries (statistics, ML, image processing, etc)
- - work on the core programming model (what is a Beam pipeline and how does it
-   run?)
- - improve the developer experience (for example, Windows guides)
- - add answers to the [contribution FAQ](
- https://cwiki.apache.org/confluence/display/BEAM/Contributor+FAQ)
- - organize local meetups of users or contributors to Apache Beam
+</div>
 
-Most importantly, if you have an idea of how to contribute, then do it!
+<a class="arrow-list-header" data-toggle="collapse" href="#collapseContributing" role="button" aria-expanded="false" aria-controls="collapseContributing">
+   {{< figure src="/images/arrow-icon_list.svg">}}
 
 ## Contributing code
 
+  </a>
+
+<div class="collapse dont-collapse-sm" id="collapseContributing">
+
 Below is a tutorial for contributing code to Beam, covering our tools and typical process in
 detail.
 
 ### Prerequisites
 
-To contribute code, you need
+* a GitHub account
+* a Linux, macOS, or Microsoft Windows development environment with Java JDK 8 installed
+* [Docker](https://www.docker.com/) installed for some tasks including building worker containers and testing this website
+  changes locally
+* [Go](https://golang.org) 1.12 or later installed for Go SDK development
+* Python 3.6, 3.7, and 3.8. Yes, you need all four versions installed.
+
+  pip, setuptools, virtualenv, and tox installed for Python development
+
+* for large contributions, a signed [Individual Contributor License
+  Agreement](https://www.apache.org/licenses/icla.pdf) (ICLA) to the Apache
+  Software Foundation (ASF).
 
- - a GitHub account
- - a Linux, macOS, or Microsoft Windows development environment with Java JDK 8 installed
- - [Docker](https://www.docker.com/) installed for some tasks including building worker containers and testing this website
-   changes locally
- - [Go](https://golang.org) 1.12 or later installed for Go SDK development
- - Python 3.6, 3.7, and 3.8. Yes, you need all three versions installed.
-    - pip, setuptools, virtualenv, and tox installed for Python development
- - for large contributions, a signed [Individual Contributor License
-   Agreement](https://www.apache.org/licenses/icla.pdf) (ICLA) to the Apache
-   Software Foundation (ASF).

Review comment:
       Thank you

##########
File path: website/www/site/content/en/blog/beam-2.22.0.md
##########
@@ -18,7 +18,7 @@ See the License for the specific language governing permissions and
 limitations under the License.
 -->
 We are happy to present the new 2.22.0 release of Beam. This release includes both improvements and new functionality.
-See the [download page](/get-started/downloads/#2220-2020-06-08) for this release.<!--more-->
+See the [download page](/get-started/downloads/#2220-2020-06-08) for this release.

Review comment:
       It looks like you have restored all the blog posts (except for a weird whitespace change in the 2.13.0 post). But there's still a lot of other files that have recent changes backed out. See contribute/release-guide.md, dsls/sql/overview.md, documentation/io/built-in/google-bigquery.md, documentation/io/built-in/snowflake.md, documentation/programming-guide.md, get-started/downloads.md, get-started/quickstart-java.md

##########
File path: website/www/site/content/en/blog/beam-2.22.0.md
##########
@@ -18,7 +18,7 @@ See the License for the specific language governing permissions and
 limitations under the License.
 -->
 We are happy to present the new 2.22.0 release of Beam. This release includes both improvements and new functionality.
-See the [download page](/get-started/downloads/#2220-2020-06-08) for this release.<!--more-->
+See the [download page](/get-started/downloads/#2220-2020-06-08) for this release.

Review comment:
       It looks like you have restored all the blog posts (except for a weird whitespace change in the 2.13.0 post). But there's still a lot of other files that have recent changes backed out. See contribute/release-guide.md, dsls/sql/overview.md, documentation/io/built-in/google-bigquery.md, documentation/io/built-in/snowflake.md, documentation/programming-guide.md, get-started/downloads.md, get-started/quickstart-java.md, and others (this list isn't exhaustive)

##########
File path: website/www/site/layouts/shortcodes/highlight.html
##########
@@ -12,20 +12,36 @@
 
 {{ $content := (trim .Inner "\n\r") | htmlUnescape | safeHTML }}
 {{ $ctx := . }}
-{{ with (.Get "class") }}
-    <div class={{ . }}>
-        {{ with ($ctx.Get "lang") }}
+{{ $py := .Get "py" }}
+{{ with (.Get "language") }}
+    <div class='{{ printf "language-%s" . }} snippet'>
+        <div class="notebook-skip code-snippet">
+            {{ with $py }}
+                <a target="_blank" type="button" data-bs-toggle="tooltip" data-bs-placement="bottom" title="Run code" href="https://colab.research.google.com/github/{{ $ctx.Site.Params.branch_repo }}/{{ $ctx.Get `notebook` }}-py.ipynb">
+                    <img src="/images/run-icon.svg"/>
+                </a>
+                <a target="_blank" type="button" data-bs-toggle="tooltip" data-bs-placement="bottom" title="View source code" href="https://github.com/{{ $ctx.Site.Params.branch_repo }}/{{ $ctx.Get `py` }}">
+                    <img src="/images/code-icon.svg"/>
+                </a>
+                <a class="copy" type="button" data-bs-toggle="tooltip" data-bs-placement="bottom" title="Copy to clipboard">
+                    <img src="/images/copy-icon.svg"/>
+                </a>
+            {{ else }}
+                <a class="copy" type="button" data-bs-toggle="tooltip" data-bs-placement="bottom" title="Copy to clipboard">
+                    <img src="/images/copy-icon.svg"/>
+                </a>
+            {{ end }}
             {{ highlight $content . "" }}
-        {{ else }}
-            {{ highlight $content "" "" }}
-        {{ end }}
+        </div>
     </div>
 {{ else }}
-    {{ with (.Get 0) }}
-        <div class={{ printf "language-%s" . }}>
-            {{ highlight $content . "" }}
+    <div class="snippet">
+        <div class="notebook-skip code-snippet without_switcher">
+            <a class="copy" type="button" data-bs-toggle="tooltip" data-bs-placement="bottom" title="Copy to clipboard">
+                <img src="/images/copy-icon.svg"/>
+            </a>
+            {{ highlight $content "" "" }}
         </div>
-    {{ else }}
-        {{ highlight $content "" "" }}
-    {{ end }}
+    </div>

Review comment:
       This looks great, thank you!

##########
File path: website/www/site/layouts/shortcodes/highlight.html
##########
@@ -12,20 +12,36 @@
 
 {{ $content := (trim .Inner "\n\r") | htmlUnescape | safeHTML }}
 {{ $ctx := . }}
-{{ with (.Get "class") }}
-    <div class={{ . }}>
-        {{ with ($ctx.Get "lang") }}
+{{ $py := .Get "py" }}
+{{ with (.Get "language") }}
+    <div class='{{ printf "language-%s" . }} snippet'>
+        <div class="notebook-skip code-snippet">
+            {{ with $py }}
+                <a target="_blank" type="button" data-bs-toggle="tooltip" data-bs-placement="bottom" title="Run code" href="https://colab.research.google.com/github/{{ $ctx.Site.Params.branch_repo }}/{{ $ctx.Get `notebook` }}-py.ipynb">
+                    <img src="/images/run-icon.svg"/>
+                </a>
+                <a target="_blank" type="button" data-bs-toggle="tooltip" data-bs-placement="bottom" title="View source code" href="https://github.com/{{ $ctx.Site.Params.branch_repo }}/{{ $ctx.Get `py` }}">
+                    <img src="/images/code-icon.svg"/>
+                </a>
+                <a class="copy" type="button" data-bs-toggle="tooltip" data-bs-placement="bottom" title="Copy to clipboard">
+                    <img src="/images/copy-icon.svg"/>
+                </a>
+            {{ else }}
+                <a class="copy" type="button" data-bs-toggle="tooltip" data-bs-placement="bottom" title="Copy to clipboard">
+                    <img src="/images/copy-icon.svg"/>
+                </a>
+            {{ end }}
             {{ highlight $content . "" }}
-        {{ else }}
-            {{ highlight $content "" "" }}
-        {{ end }}
+        </div>
     </div>
 {{ else }}
-    {{ with (.Get 0) }}
-        <div class={{ printf "language-%s" . }}>
-            {{ highlight $content . "" }}
+    <div class="snippet">
+        <div class="notebook-skip code-snippet without_switcher">
+            <a class="copy" type="button" data-bs-toggle="tooltip" data-bs-placement="bottom" title="Copy to clipboard">
+                <img src="/images/copy-icon.svg"/>
+            </a>
+            {{ highlight $content "" "" }}
         </div>
-    {{ else }}
-        {{ highlight $content "" "" }}
-    {{ end }}
+    </div>

Review comment:
       The last issue is resolved now, thanks

##########
File path: website/www/site/content/en/contribute/_index.md
##########
@@ -127,173 +128,9 @@ script which is part of the Beam repo:
 1. Assign the issue to yourself. To get the permission to do so, email
    the [dev@ mailing list](/community/contact-us)
    to introduce yourself and to be added as a contributor in the Beam issue tracker including your
-   ASF Jira Username. For example [this welcome email](
-   https://lists.apache.org/thread.html/e6018c2aaf7dc7895091434295e5b0fafe192b975e3e3761fcf0cda7@%3Cdev.beam.apache.org%3E).
+   ASF Jira Username. For example [this welcome email](https://lists.apache.org/thread.html/e6018c2aaf7dc7895091434295e5b0fafe192b975e3e3761fcf0cda7@%3Cdev.beam.apache.org%3E).
 1. If your change is large or it is your first change, it is a good idea to
    [discuss it on the dev@ mailing list](/community/contact-us/).
 1. For large changes create a design doc
    ([template](https://s.apache.org/beam-design-doc-template),
    [examples](https://s.apache.org/beam-design-docs)) and email it to the [dev@ mailing list](/community/contact-us).
-
-### Development Setup {#development-setup}
-
-1. If you need help with git forking, cloning, branching, committing, pull requests, and squashing commits, see
-   [Git workflow tips](https://cwiki.apache.org/confluence/display/BEAM/Git+Tips)
-1. Familiarize yourself with gradle and the project structure. At the root of the git repository, run:

Review comment:
       Filed BEAM-11751 to maybe remove it in the future

##########
File path: website/www/site/content/en/contribute/_index.md
##########
@@ -21,55 +24,61 @@ See the License for the specific language governing permissions and
 limitations under the License.
 -->
 
-# Apache Beam Contribution Guide
+# Contribution guide
+
+<a class="arrow-list-header" data-toggle="collapse" href="#collapseOverview" role="button" aria-expanded="false"        aria-controls="collapseOverview">
+   {{< figure src="/images/arrow-icon_list.svg">}}

Review comment:
       Can you confirm that these expand buttons are working as intended? The behavior seems odd to me.
   On desktop: 
   - [ ] Content is always expanded, no arrow shows up. This could be intentional, but also ...
   - [x] The headings look like links, and when I hover the underline goes away, but its not actually clickable.
   
   On mobile:
   - [ ] The contributing code section only collapses to down to "To install these in a debian-based distribution"
   - [ ] Clicking the arrows to expand has no effect

##########
File path: website/www/site/content/en/contribute/_index.md
##########
@@ -21,55 +24,61 @@ See the License for the specific language governing permissions and
 limitations under the License.
 -->
 
-# Apache Beam Contribution Guide
+# Contribution guide
+
+<a class="arrow-list-header" data-toggle="collapse" href="#collapseOverview" role="button" aria-expanded="false"        aria-controls="collapseOverview">
+   {{< figure src="/images/arrow-icon_list.svg">}}

Review comment:
       Can you confirm that these expand buttons are working as intended? The behavior seems odd to me.
   On desktop: 
   - [x] Content is always expanded, no arrow shows up. This could be intentional, but also ...
   - [x] The headings look like links, and when I hover the underline goes away, but its not actually clickable.
   
   On mobile:
   - [ ] The contributing code section only collapses to down to "To install these in a debian-based distribution"
   - [ ] Clicking the arrows to expand has no effect

##########
File path: website/www/site/content/en/contribute/_index.md
##########
@@ -21,55 +24,61 @@ See the License for the specific language governing permissions and
 limitations under the License.
 -->
 
-# Apache Beam Contribution Guide
+# Contribution guide
+
+<a class="arrow-list-header" data-toggle="collapse" href="#collapseOverview" role="button" aria-expanded="false"        aria-controls="collapseOverview">
+   {{< figure src="/images/arrow-icon_list.svg">}}

Review comment:
       Ok the dropdown buttons work better on desktop now. They still seem broken on mobile though, nothing happens when I click them.

##########
File path: website/www/site/static/js/copy-to-clipboard.js
##########
@@ -0,0 +1,42 @@
+// Licensed under the Apache License, Version 2.0 (the 'License'); you may not
+// use this file except in compliance with the License. You may obtain a copy of
+// the License at
+//
+//   http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an 'AS IS' BASIS, WITHOUT
+// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+// License for the specific language governing permissions and limitations under
+// the License.
+
+$(document).ready(function() {
+    function copy() {
+        $(".copy").click(function(){
+            var text=$(this).siblings()[$(this).siblings().length-1].childNodes[0].innerHTML;
+            const el=document.createElement('textarea');
+            el.value=text;document.body.appendChild(el);
+            el.select();document.execCommand('copy');
+            document.body.removeChild(el);
+            alert('copied to clipboard');
+        })
+        $(".just-copy").click(function(){
+            var text=$(this).parent().siblings()[0].innerHTML;
+            const el=document.createElement('textarea');
+            el.value=text;document.body.appendChild(el);
+            el.select();document.execCommand('copy');
+            document.body.removeChild(el);
+            alert('copied to clipboard');

Review comment:
       This alert is strange to me. It's weird to have to click "OK" after copying.
   
   Other implementations of this usually pop up a notification to let you know the content has been copied, but you don't have to acknowledge it. If it's too much to address this right now let's file a jira about it.

##########
File path: website/www/site/data/en/committer_traits.yaml
##########
@@ -0,0 +1,21 @@
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+- body: { text: To learn more see the ASF documentation., link: https://www.apache.org/foundation/policies/conduct.html }
+  bolded: Knows, upholds, and reinforces the Apache Software Foundation code of conduct.
+  icon: icons/contributor/become a committer/messages-icon.svg
+- body: { text: To learn more see the ASF documentation., link: https://infra.apache.org/committers.html#committer-responsibilities }
+  bolded: Knows, upholds, and reinforces the responsibilities of an Apache Software Foundation committer.
+  icon: icons/contributor/become a committer/beam-logo-icon.svg
+- body: { text: To learn more see our best practices!, link: https://beam.apache.org/contribute/become-a-committer/ }

Review comment:
       become-a-committer is the page that this is displayed on. I think this link should be /attributes/?
   
   This seems a little backwards again.. but that is a design question for @griscz 

##########
File path: website/www/site/content/en/contribute/_index.md
##########
@@ -21,55 +24,61 @@ See the License for the specific language governing permissions and
 limitations under the License.
 -->
 
-# Apache Beam Contribution Guide
+# Contribution guide
+
+<a class="arrow-list-header" data-toggle="collapse" href="#collapseOverview" role="button" aria-expanded="false"        aria-controls="collapseOverview">
+   {{< figure src="/images/arrow-icon_list.svg">}}
+
+## Overview
+
+</a>
+
+<div class="collapse dont-collapse-sm" id="collapseOverview">
 
-The Apache Beam community welcomes contributions from anyone!
+There are lots of opportunities to contribute. You can for example:
 
-If you have questions, please [reach out to the Beam community](/contribute/get-help).
+* ask or answer questions on [user@beam.apache.org](/community/contact-us/) or
+  [stackoverflow](https://stackoverflow.com/questions/tagged/apache-beam)
+* review proposed design ideas on [dev@beam.apache.org](/community/contact-us/)
+* file [bug reports](https://issues.apache.org/jira/projects/BEAM/issues)
+* review [changes](https://github.com/apache/beam/pulls)
+* work on the core programming model (what is a Beam pipeline and how does it
+  run?)
+* improve the developer experience (for example, Windows guides)
+* organize local meetups of users or contributors to Apache Beam
 
-There are lots of opportunities to contribute:
+...and many more. Most importantly, if you have an idea of how to contribute, then do it!

Review comment:
       This is still not rendering correctly, I think we should just remove the "... and many more" unless you know what's going wrong here.

##########
File path: website/www/site/static/js/copy-to-clipboard.js
##########
@@ -0,0 +1,42 @@
+// Licensed under the Apache License, Version 2.0 (the 'License'); you may not
+// use this file except in compliance with the License. You may obtain a copy of
+// the License at
+//
+//   http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an 'AS IS' BASIS, WITHOUT
+// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+// License for the specific language governing permissions and limitations under
+// the License.
+
+$(document).ready(function() {
+    function copy() {
+        $(".copy").click(function(){
+            var text=$(this).siblings()[$(this).siblings().length-1].childNodes[0].innerHTML;
+            const el=document.createElement('textarea');
+            el.value=text;document.body.appendChild(el);
+            el.select();document.execCommand('copy');
+            document.body.removeChild(el);
+            alert('copied to clipboard');
+        })
+        $(".just-copy").click(function(){
+            var text=$(this).parent().siblings()[0].innerHTML;
+            const el=document.createElement('textarea');
+            el.value=text;document.body.appendChild(el);
+            el.select();document.execCommand('copy');
+            document.body.removeChild(el);
+            alert('copied to clipboard');

Review comment:
       This alert is strange to me. It's weird to have to click "OK" after copying.
   
   Other implementations of this sort of featureu usually pop up a notification to let you know the content has been copied, but you don't have to acknowledge it. If it's too much to address this right now let's file a jira about it.

##########
File path: website/www/site/content/en/blog/beam-2.22.0.md
##########
@@ -18,7 +18,7 @@ See the License for the specific language governing permissions and
 limitations under the License.
 -->
 We are happy to present the new 2.22.0 release of Beam. This release includes both improvements and new functionality.
-See the [download page](/get-started/downloads/#2220-2020-06-08) for this release.<!--more-->
+See the [download page](/get-started/downloads/#2220-2020-06-08) for this release.

Review comment:
       This looks good now, thank you

##########
File path: website/www/site/static/js/copy-to-clipboard.js
##########
@@ -0,0 +1,42 @@
+// Licensed under the Apache License, Version 2.0 (the 'License'); you may not
+// use this file except in compliance with the License. You may obtain a copy of
+// the License at
+//
+//   http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an 'AS IS' BASIS, WITHOUT
+// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+// License for the specific language governing permissions and limitations under
+// the License.
+
+$(document).ready(function() {
+    function copy() {
+        $(".copy").click(function(){
+            var text=$(this).siblings()[$(this).siblings().length-1].childNodes[0].innerHTML;
+            const el=document.createElement('textarea');
+            el.value=text;document.body.appendChild(el);
+            el.select();document.execCommand('copy');
+            document.body.removeChild(el);
+            alert('copied to clipboard');
+        })
+        $(".just-copy").click(function(){
+            var text=$(this).parent().siblings()[0].innerHTML;
+            const el=document.createElement('textarea');
+            el.value=text;document.body.appendChild(el);
+            el.select();document.execCommand('copy');
+            document.body.removeChild(el);
+            alert('copied to clipboard');

Review comment:
       Ok let's just file a jira for now

##########
File path: website/www/site/content/en/contribute/_index.md
##########
@@ -21,55 +24,61 @@ See the License for the specific language governing permissions and
 limitations under the License.
 -->
 
-# Apache Beam Contribution Guide
+# Contribution guide
+
+<a class="arrow-list-header" data-toggle="collapse" href="#collapseOverview" role="button" aria-expanded="false"        aria-controls="collapseOverview">
+   {{< figure src="/images/arrow-icon_list.svg">}}

Review comment:
       Can you confirm that these expand buttons are working as intended? The behavior seems odd to me.
   On desktop: 
   - [x] Content is always expanded, no arrow shows up. This could be intentional, but also ...
   - [x] The headings look like links, and when I hover the underline goes away, but its not actually clickable.
   
   On mobile:
   - [ ] The contributing code section only collapses to down to "To install these in a debian-based distribution"
   - [x] Clicking the arrows to expand has no effect

##########
File path: website/www/site/content/en/contribute/_index.md
##########
@@ -21,55 +24,61 @@ See the License for the specific language governing permissions and
 limitations under the License.
 -->
 
-# Apache Beam Contribution Guide
+# Contribution guide
+
+<a class="arrow-list-header" data-toggle="collapse" href="#collapseOverview" role="button" aria-expanded="false"        aria-controls="collapseOverview">
+   {{< figure src="/images/arrow-icon_list.svg">}}

Review comment:
       Ok the dropdowns seem to be working now. But the second one still only collapses down to "To install these in a debian-based distribution", which doesn't seem correct. That's still part of the Contributing Code section

##########
File path: website/www/site/content/en/contribute/_index.md
##########
@@ -21,55 +24,61 @@ See the License for the specific language governing permissions and
 limitations under the License.
 -->
 
-# Apache Beam Contribution Guide
+# Contribution guide
+
+<a class="arrow-list-header" data-toggle="collapse" href="#collapseOverview" role="button" aria-expanded="false"        aria-controls="collapseOverview">
+   {{< figure src="/images/arrow-icon_list.svg">}}

Review comment:
       Ok the dropdowns seem to be working now. But the second one still only collapses down to "To install these in a debian-based distribution", which doesn't seem correct. That's still part of the Contributing Code section
   
   ![image](https://user-images.githubusercontent.com/675055/106955236-d14f9980-66e9-11eb-9e01-8145654ac1e3.png)
   

##########
File path: website/www/site/content/en/contribute/_index.md
##########
@@ -21,55 +24,61 @@ See the License for the specific language governing permissions and
 limitations under the License.
 -->
 
-# Apache Beam Contribution Guide
+# Contribution guide
+
+<a class="arrow-list-header" data-toggle="collapse" href="#collapseOverview" role="button" aria-expanded="false"        aria-controls="collapseOverview">
+   {{< figure src="/images/arrow-icon_list.svg">}}

Review comment:
       It looks like there's a <div> that just needs to be moved lower.

##########
File path: website/www/site/content/en/contribute/_index.md
##########
@@ -21,55 +24,61 @@ See the License for the specific language governing permissions and
 limitations under the License.
 -->
 
-# Apache Beam Contribution Guide
+# Contribution guide
+
+<a class="arrow-list-header" data-toggle="collapse" href="#collapseOverview" role="button" aria-expanded="false"        aria-controls="collapseOverview">
+   {{< figure src="/images/arrow-icon_list.svg">}}

Review comment:
       It looks like there's a `</div>` that just needs to be moved lower.




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] Jakub-Sadowski commented on a change in pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
Jakub-Sadowski commented on a change in pull request #13565:
URL: https://github.com/apache/beam/pull/13565#discussion_r559200531



##########
File path: website/www/site/content/en/contribute/_index.md
##########
@@ -83,217 +76,136 @@ sudo apt-get install \
    docker-ce
 ```
 
-On some systems (like Ubuntu 20.04) these need to be installed also
-```
-pip3 install grpcio-tools mypy-protobuf
-```
+</br>
 
 You also need to [install Go](https://golang.org/doc/install).
 
+</br>
+
 Once Go is installed, install goavro:
 
+</br>
+
 ```
 $ export GOPATH=`pwd`/sdks/go/examples/.gogradle/project_gopath
 $ go get github.com/linkedin/goavro
 ```
 
-gLinux users should configure their machines for sudoless Docker.
-
-Alternatively, you can use the Docker based local development environment to wrap your clone of the Beam repo
-into a container meeting the requirements above.
-
-You can start this container using the [start-build-env.sh](https://github.com/apache/beam/blob/master/start-build-env.sh)
-script which is part of the Beam repo:
-```
-./start-build-env.sh
-```
-
-### Connect With the Beam community
-
-1. Consider subscribing to the [dev@ mailing list](/community/contact-us/), especially
-   if you plan to make more than one change or the change will be large. All decisions happen on the
-   public dev list.
-1. (Optionally) Join the [#beam channel of the ASF slack](/community/contact-us/).
-1. Create an account on [Beam issue tracker (JIRA)](https://issues.apache.org/jira/projects/BEAM/issues)
-   (anyone can do this).
-
-### Share your intent
-
-1. Find or create an issue in the [Beam issue tracker (JIRA)](https://issues.apache.org/jira/projects/BEAM/issues).
-   Tracking your work in an issue will avoid duplicated or conflicting work, and provide
-   a place for notes. Later, your pull request will be linked to the issue as well.
-1. If you want to get involved but don't have a project in mind, check our list of open starter tasks,
-   [https://s.apache.org/beam-starter-tasks](https://s.apache.org/beam-starter-tasks).
-1. Assign the issue to yourself. To get the permission to do so, email
-   the [dev@ mailing list](/community/contact-us)
-   to introduce yourself and to be added as a contributor in the Beam issue tracker including your
-   ASF Jira Username. For example [this welcome email](
-   https://lists.apache.org/thread.html/e6018c2aaf7dc7895091434295e5b0fafe192b975e3e3761fcf0cda7@%3Cdev.beam.apache.org%3E).
-1. If your change is large or it is your first change, it is a good idea to
-   [discuss it on the dev@ mailing list](/community/contact-us/).
-1. For large changes create a design doc
-   ([template](https://s.apache.org/beam-design-doc-template),
-   [examples](https://s.apache.org/beam-design-docs)) and email it to the [dev@ mailing list](/community/contact-us).
-
-### Development Setup
-
-1. If you need help with git forking, cloning, branching, committing, pull requests, and squashing commits, see
-   [Git workflow tips](https://cwiki.apache.org/confluence/display/BEAM/Git+Tips)
-1. Familiarize yourself with gradle and the project structure. At the root of the git repository, run:
-
-       $ ./gradlew projects
-
-   Examine the available tasks in a project. For the default set of tasks, use:
-
-       $ ./gradlew tasks
-
-   For a given module, use:
-
-       $ ./gradlew -p sdks/java/io/cassandra tasks
-
-    For an exhaustive list of tasks, use:
-
-       $ ./gradlew tasks --all
-
-1. Make sure you can build and run tests
-
-    Run the entire set of tests with:
+</br>
 
-       $ ./gradlew check
+Linux users should configure their machines for sudoless Docker.
 
-   You can limit testing to a particular module. Gradle will build just the necessary things to run those tests. For example:
+</div>
 
-       $ ./gradlew -p sdks/go check
-       $ ./gradlew -p sdks/java/io/cassandra check
-       $ ./gradlew -p runners/flink check
+<div class="arrow-lists-mobile">
 
-1. Now you may want to set up your preferred IDE and other aspects of your development
-   environment. See the Developers' wiki for tips, guides, and FAQs on:
-   - [IntelliJ](https://cwiki.apache.org/confluence/display/BEAM/Using+IntelliJ+IDE)
-   - [Java](https://cwiki.apache.org/confluence/display/BEAM/Java+Tips)
-   - [Python](https://cwiki.apache.org/confluence/display/BEAM/Python+Tips)
-   - [Go](https://cwiki.apache.org/confluence/display/BEAM/Go+Tips)
-   - [Website](https://cwiki.apache.org/confluence/display/BEAM/Website+Tips)
-   - [Gradle](https://cwiki.apache.org/confluence/display/BEAM/Gradle+Tips)
-   - [Jenkins](https://cwiki.apache.org/confluence/display/BEAM/Jenkins+Tips)
-   - [FAQ](https://cwiki.apache.org/confluence/display/BEAM/Contributor+FAQ)
+ <a class="arrow-list-header" data-toggle="collapse" href="#collapseOverview" role="button" aria-expanded="false" aria-controls="collapseOverview">
+  {{< figure src="/images/arrow-icon_list.svg">}}
 
-### Make your change
+Overview
 
-1. Make your code change. Every source file needs to include the Apache license header. Every new dependency needs to
-   have an open source license [compatible](https://www.apache.org/legal/resolved.html#criteria) with Apache.
+  </a>
 
-1. Add unit tests for your change.
+<div class="collapse" id="collapseOverview">
 
-1. Use descriptive commit messages that make it easy to identify changes and provide a clear history.
+There are lots of opportunities to contribute. You can for example:
 
-1. When your change is ready to be reviewed and merged, create a pull request.
+- ask or answer questions on [user@beam.apache.org](/community/contact-us/) or
+  [stackoverflow](https://stackoverflow.com/questions/tagged/apache-beam)
+- review proposed design ideas on [dev@beam.apache.org](/community/contact-us/)
+- file [bug reports](https://issues.apache.org/jira/projects/BEAM/issues)
+- review [changes](https://github.com/apache/beam/pulls)
+- work on the core programming model (what is a Beam pipeline and how does it
+  run?)
+- improve the developer experience (for example, Windows guides)
+- organize local meetups of users or contributors to Apache Beam
 
-1. Format commit messages and the pull request title like `[BEAM-XXX] Fixes bug in ApproximateQuantiles`,
-   where you replace BEAM-XXX with the appropriate JIRA issue.
-   This will automatically link the pull request to the issue.
+...and many more. Most importantly, if you have an idea of how to contribute, then do it!
 
-1. The pull request and any changes pushed to it will trigger [pre-commit
-   jobs](https://cwiki.apache.org/confluence/display/BEAM/Contribution+Testing+Guide#ContributionTestingGuide-Pre-commit). If a test fails and appears unrelated to your
-   change, you can cause tests to be re-run by adding a single line comment on your
-   PR
+</div>
 
-        retest this please
+<a class="arrow-list-header" data-toggle="collapse" href="#collapseContributing" role="button" aria-expanded="false" aria-controls="collapseContributing">
+   {{< figure src="/images/arrow-icon_list.svg">}}
 
-   Pull request template has a link to a [catalog of trigger phrases](https://github.com/apache/beam/blob/master/.test-infra/jenkins/README.md)
-   that start various post-commit tests suites. Use these sparingly because post-commit tests consume shared development resources.
+Contributing code
 
-1. Pull requests can only be merged by a
-   [Beam committer](https://home.apache.org/phonebook.html?pmc=beam).
-   To find a committer for your area, either:
-    - look in the OWNERS file of the directory where you changed files, or
-    - look for similar code merges, or
-    - ask on [dev@beam.apache.org](/community/contact-us/)
+  </a>
 
-   Use `R: @username` in the pull request to notify a reviewer.
+<div class="collapse" id="collapseContributing">
 
-1. If you don't get any response in 3 business days, email the [dev@ mailing list](/community/contact-us) to ask for someone to look at your pull
-   request.
-
-### Make the reviewer's job easier
-
-1. Provide context for your changes in the associated JIRA issue and/or PR description.
-
-1. Avoid huge mega-changes.
-
-1. Review feedback typically leads to follow-up changes. It is easier to review follow-up changes when they are added as additional "fixup" commits to the
-   existing PR/branch. This allows reviewer(s) to track the incremental progress and focus on new changes,
-   and keeps comment threads attached to the code.
-   Please refrain from squashing new commits into reviewed commits before review is completed.
-   Because squashing reviewed and unreviewed commits often makes it harder to
-   see the the difference between the review iterations, reviewers may ask you to unsquash new changes.
-
-1. After review is complete and the PR is accepted, fixup commits should be squashed (see [Git workflow tips](https://cwiki.apache.org/confluence/display/BEAM/Git+Tips)).
-   Beam committers [can squash](https://beam.apache.org/contribute/committer-guide/#merging-it)
-   all commits in the PR during merge, however if a PR has a mixture of independent changes that should not be squashed, and fixup commits,
-   then the PR author should help squashing fixup commits to maintain a clean commmit history.
-
-## When will my change show up in an Apache Beam release?
-
-Apache Beam makes minor releases every 6 weeks. Apache Beam has a
-[calendar](https://calendar.google.com/calendar/embed?src=0p73sl034k80oob7seouanigd0%40group.calendar.google.com) for
-cutting the next release branch. Your change needs to be checked into master before the release branch is cut
-to make the next release.
-
-## Stale pull requests
+Below is a tutorial for contributing code to Beam, covering our tools and typical process in
+detail.
 
-The community will close stale pull requests in order to keep the project
-healthy. A pull request becomes stale after its author fails to respond to
-actionable comments for 60 days.  Author of a closed pull request is welcome to
-reopen the same pull request again in the future. The associated JIRAs will be
-unassigned from the author but will stay open.
+- a GitHub account
+- a Linux, macOS, or Microsoft Windows development environment with Java JDK 8 installed
+- [Docker](https://www.docker.com/) installed for some tasks including building worker containers and testing this website
+  changes locally
+- [Go](https://golang.org) 1.12 or later installed for Go SDK development
+- Python 3.6, 3.7, and 3.8. Yes, you need all four versions installed.
 
-## Accounts and Permissions
+  pip, setuptools, virtualenv, and tox installed for Python development
 
-- [Beam issue tracker (JIRA)](https://issues.apache.org/jira/projects/BEAM/issues):
-  Anyone can access it and browse issues. Anyone can register an account and login
-  to create issues or add comments. Only contributors can be assigned issues. If
-  you want to be assigned issues, a PMC member can add you to the project contributor
-  group.  Email the [dev@ mailing list](/community/contact-us)
-  to ask to be added as a contributor in the Beam issue tracker, and include your ASF Jira username.
+- for large contributions, a signed [Individual Contributor License
+  Agreement](https://www.apache.org/licenses/icla.pdf) (ICLA) to the Apache
+  Software Foundation (ASF).
 
-- [Beam Wiki Space](https://cwiki.apache.org/confluence/display/BEAM/Apache+Beam):
-  Anyone has read access. If you wish to contribute changes, please create an account and request edit access on the
-  [dev@ mailing list](/community/contact-us) (include your Wiki account user ID).
+</div>
 
-- Pull requests can only be merged by a
-  [Beam committer](https://home.apache.org/phonebook.html?pmc=beam).
+</br>
 
-- [Voting on a release](https://www.apache.org/foundation/voting.html): Everyone can vote. Only
-  [Beam PMC](https://home.apache.org/phonebook.html?pmc=beam) members should mark their votes as binding.
+```
+sudo apt-get install \
+   openjdk-8-jdk \
+   python-setuptools \
+   python-pip \
+   virtualenv \
+   tox \
+   docker-ce
+```
 
-## Communication
+</br>
 
-All communication is expected to align with the [Code of Conduct](https://www.apache.org/foundation/policies/conduct).
+You also need to [install Go](https://golang.org/doc/install).
 
-Discussion about contributing code to Beam happens on the [dev@ mailing list](/community/contact-us/). Introduce yourself!
+</br>
 
-Questions can be asked on the [#beam channel of the ASF slack](/community/contact-us/). Introduce yourself!
+Once Go is installed, install goavro:
 
-## Additional resources
+</br>
 
-If you are contributing a `PTransform` to Beam, we have an extensive
-[PTransform Style Guide](/contribute/ptransform-style-guide).
+```
+$ export GOPATH=`pwd`/sdks/go/examples/.gogradle/project_gopath
+$ go get github.com/linkedin/goavro
+```
 
-If you are contributing a Runner to Beam, refer to the
-[Runner authoring guide](/contribute/runner-guide/)
+</br>
 
-Review [design documents](https://s.apache.org/beam-design-docs).
+Linux users should configure their machines for sudoless Docker.
 
-A great way to contribute is to join an existing effort. For the most
-intensive efforts, check out the [roadmap](/roadmap/).
+</div>

Review comment:
       Yes, unfortunately mobile version is a bit different so I had discern and duplicate some informations




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] TheNeuralBit commented on a change in pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
TheNeuralBit commented on a change in pull request #13565:
URL: https://github.com/apache/beam/pull/13565#discussion_r568708871



##########
File path: website/www/site/content/en/blog/adding-data-sources-to-sql.md
##########
@@ -81,19 +81,19 @@ The `TableProvider` classes are under
 
 Our table provider looks like this:
 
-{{< highlight java >}}
+{{< highlight language="java" >}}
 @AutoService(TableProvider.class)
 public class GenerateSequenceTableProvider extends InMemoryMetaTableProvider {
 
-  @Override
-  public String getTableType() {
-    return "sequence";
-  }
+@Override
+public String getTableType() {
+return "sequence";
+}
 
-  @Override
-  public BeamSqlTable buildBeamSqlTable(Table table) {
-    return new GenerateSequenceTable(table);
-  }
+@Override
+public BeamSqlTable buildBeamSqlTable(Table table) {
+return new GenerateSequenceTable(table);
+}

Review comment:
       Can we just set up the website to use the new code snippet widget with \```? Unless we add some explicit check to forbid ```, people will continue to use that syntax since it's very common markdown syntax.




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [beam] griscz commented on a change in pull request #13565: [BEAM-11424-11423-11368][Website revamp] Implemented contribution guide, become a committer pages and twitter feed

Posted by GitBox <gi...@apache.org>.
griscz commented on a change in pull request #13565:
URL: https://github.com/apache/beam/pull/13565#discussion_r569723066



##########
File path: website/www/site/content/en/contribute/practises.md
##########
@@ -0,0 +1,66 @@
+---
+title: "Beam community’s practises"
+layout: "arrow_template"
+---
+
+<!--
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+-->
+
+# Beam community’s practises
+
+{{< figure src="/images/community/messages-icon.svg" >}}
+
+## Knows, upholds, and reinforces the Beam community’s practices
+
+- They have a proven commitment to the project
+- They share their intentions with the community
+- They accept and integrate community feedback in their plans, designs, code, etc.
+- They earnestly try to make Beam better with their contributions
+
+In particular, if a code contributor:
+
+- They earnestly try to make Beam better with their own code
+- They earnestly try to make Beam better with code review
+- They accept and integrate feedback on their code
+- They know, follow, and enforce Beam’s practices while reviewing/merging code - style, documentation, testing, backward compatibility, etc.
+
+{{< figure src="/images/community/beam-logo-icon.svg" >}}
+
+## Knows, upholds, and reinforces the Apache Software Foundation code of conduct
+
+In particular, we manifestly strive to:
+
+- Be open
+- Be empathetic
+- Be welcoming
+- Be friendly
+- Be patient
+- Be collaborative
+- Be inquisitive
+- Be careful in the words that they choose
+
+[To learn more see the ASF documentation.](https://httpd.apache.org/docs/)
+
+{{< figure src="/images/community/diamond-icon.svg" >}}
+
+## Knows, upholds, and reinforces the responsibilities of an Apache Software Foundation committer
+
+- They help create a product that will outlive the interest of any particular volunteer (including themselves)
+- They grow and maintain the health of the Apache community
+- They help out with surrounding work, such as the website & documentation
+- They help users
+- They can be trusted to decide when code is ready for release, or when to ask someone else to make the judgment
+- They can be trusted to decide when to merge code (if a code contributor) or when to ask someone else to make the judgment
+
+[To learn more see the ASF documentation.](https://httpd.apache.org/docs/)

Review comment:
       Hi folks, we discussed and the best thing to do is to change the page's title to: 
   
   "Attributes of a Beam community member" 
   
   Instead of Beam community practises




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org