<!--
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.
-->

# List Of Documents Submitted To dev@beam.apache.org In 2019
| No. | Author | Subject | Date (UTC) |
|---|---|---|---|
| 1 | Robert Burke | [[Go SDK] User Defined Coders](https://docs.google.com/document/d/1kQwx4Ah6PzG8z2ZMuNsNEXkGsLXm6gADOZaIO7reUOg) | 2019-01-03 14:45:11 |
| 2 | Mikhail Gryzykhin | [Grafana](https://s.apache.org/beam-community-metrics) | 2019-01-03 20:38:59 |
| 3 | Manu Zhang | [Apache Beam: Python 3 support](https://s.apache.org/beam-python-3) | 2019-01-05 00:03:01 |
| 4 | Thomas Weise | [Copy of [Proposal] Apache Beam Summit Europe 2018](https://docs.google.com/document/d/1h0y85vxt0AGYdz6SZCbV2jzUGs46_M-keUZTMsm2R0I) | 2019-01-06 17:54:55 |
| 5 | Matthias Baetens | [[Public] Beam Summit London 2018 - Google Sheets](https://docs.google.com/spreadsheets/d/1pNoeLD0JBImc1-gja209mSuTVLNna_b1gmQ1r-_Z5t0) | 2019-01-07 02:25:46 |
| 6 | Maximilian Michels | [Grafana](http://s.apache.org/beam-community-metrics) | 2019-01-07 10:21:22 |
| 7 | Kenneth Knowles | [Apache Beam Portability API: How to Checkpoint and Split Bundles](https://s.apache.org/beam-checkpoint-and-split-bundles) | 2019-01-14 22:26:04 |
| 8 | Heejong Lee | [BigQuery Streaming Insert Benchmark](https://docs.google.com/document/d/1EhRNWLevm86GD_QtvlrTauHITVMwQBzuemyp-w4Z_ck) | 2019-01-16 21:53:03 |
| 9 | Alex Amato | [Refactoring Java State Sampler](https://docs.google.com/document/d/1OlAJf4T_CTL9WRH8lP8uQOfLjWYfm8IpRXSe38g34k4) | 2019-01-17 13:48:54 |
| 10 | Alexey Romanenko | [Apache Beam Fn Api Overview](https://s.apache.org/beam-fn-api) | 2019-01-18 10:49:30 |
| 11 | junwan01@gmail.com | [[BEAM-5448] Java Reference Runner in Python](https://docs.google.com/document/d/1S86saZqiDaE_M5wxO0zOQ_rwC6QHv7sp1BmGTm0dLNE) | 2019-01-21 14:32:05 |
| 12 | Robert Bradshaw | [Cross-language Beam Pipelines](https://s.apache.org/beam-mixed-language-pipelines) | 2019-01-22 07:39:05 |
| 13 | Chamikara Jayalath | [Cross-language transforms primer](https://docs.google.com/document/d/1H3yCyVFI9xYs1jsiF1GfrDtARgWGnLDEMwG5aQIx2AU) | 2019-01-22 16:44:33 |
| 14 | Etienne Chauchot | [Runner supported features plugin](https://docs.google.com/document/d/1eXt54ht0h7-pPbP-MJR0N5nzmxRRlAwbFod-LXI1x0A) | 2019-01-23 04:00:40 |
| 15 | Maximilian Michels | [Quick presentation of Nexmark Code](https://docs.google.com/document/d/1VgnGiVu8vSfm7Et-xAtQYv0PlEpqeyfmhpQUNPmWRJs) | 2019-01-28 12:13:16 |
| 16 | Kenneth Knowles | [Apache Beam Release Acceptance Criteria  - Google Sheets](https://docs.google.com/spreadsheets/d/1qk-N5vjXvbcEk68GjbkSZTR8AGqyNUM-oLFo_ZXBpJw) | 2019-01-28 12:24:12 |
| 17 | Matthias Baetens | [Apache Beam Portability Support Matrix - Google Sheets](https://s.apache.org/apache-beam-portability-support-table) | 2019-01-31 06:06:06 |
| 18 | Alex Amato | [Apache Beam Fn API: Get Metrics API: Metric Extraction via proto RPC API.](https://s.apache.org/get-metrics-api) | 2019-01-31 14:45:55 |
| 19 | Maximilian Michels | [Cross-Language Pipelines & Legacy IO](https://s.apache.org/beam-cross-language-io) | 2019-02-07 13:59:12 |
| 20 | Austin Bennett | [A Brief Intro to Apache Beam (Feb 2019) - Google Slides](http://s.apache.org/beam-intro-feb-2019) | 2019-02-11 16:51:27 |
| 21 | Daniel Oliveira | [Error - ASF JIRA](https://s.apache.org/beam-test-failure) | 2019-02-11 18:21:19 |
| 22 | Alex Amato | [Apache Beam Fn API: Get Metrics API: Metric Extraction via proto RPC API.](https://docs.google.com/document/d/1p7mRCUEigkrWickqCLCHBshrqQ97YIv1E5cZxJTKx3I) | 2019-03-12 20:22:35 |
| 23 | Udi Meiri | [Beam Python SDK: Datastore Client Upgrade](https://docs.google.com/document/d/1sL9p7NE5Z0p-5SB5uwpxWrddj_UCESKSrsvDTWNKqb4) | 2019-03-19 13:24:53 |
| 24 | Valentyn Tymofieiev | [BQ IO bytes support](https://docs.google.com/document/d/19zvDycWzF82MmtCmxrhqqyXKaRq8slRIjdxE6E8MObA) | 2019-03-25 22:19:11 |
| 25 | Tanay Tummalapalli | [GSoC proposal for Apache Beam - T. Tanay](https://docs.google.com/document/d/15Peyd3Z_wu5rvGWw8lMLpZuTyyreM_JOAEFFWvF97YY) | 2019-03-28 14:58:08 |
| 26 | Lukasz Cwik | [Implement AWS S3 and Azure Blob filesystems for  Python SDK  Apache - Beam](https://docs.google.com/document/d/1i_PoIrbmhNgwKCS1TYWC28A9RsyZQFsQCJic3aCXO-8) | 2019-04-03 11:45:41 |
| 27 | Yifan Zou | [Apache Beam Jenkins Agents Management](https://docs.google.com/document/d/1c38IPrF94PZC-ItGZgmAgAKrgmC1MGA6N6nkK0cL6L4) | 2019-04-03 21:34:57 |
| 28 | Kenneth Knowles | [Side Input Architecture for Apache Beam (incubating) 1-Pager](https://s.apache.org/beam-side-inputs-1-pager) | 2019-04-11 13:09:25 |
| 29 | Kyle Weaver | [Beam Portable Spark Runner](https://docs.google.com/document/d/1j8GERTiHUuc6CzzCXZHc38rBn41uWfATBh2-5JN8hro) | 2019-04-12 14:33:41 |
| 30 | Kenneth Knowles | [Issue Navigator - ASF JIRA](https://s.apache.org/beam-starter-tasks) | 2019-04-17 17:58:24 |
| 31 | Robert Burke | [[Go SDK] Versioning](https://docs.google.com/document/d/1ZjP30zNLWTu_WzkWbgY8F_ZXlA_OWAobAD9PuohJxPg) | 2019-04-18 00:56:34 |
| 32 | Maximilian Michels | [Beam Application Season of Docs - 2019](https://docs.google.com/document/d/1FNf-BjB4Q7PDdqygPboLr7CyIeo6JAkrt0RBgs2I4dE) | 2019-04-23 08:36:01 |
| 33 | Maximilian Michels | [[DISCUSS] FLIP-38 Support python language in flink Table API](https://docs.google.com/document/d/1ybYt-0xWRMa1Yf5VsuqGRtOfJBz4p74ZmDxZYg3j_h8) | 2019-04-24 09:20:38 |
| 34 | Rui Wang | [Complex Equi-join Condition Support in BeamSQL](https://docs.google.com/document/d/1vDiE4HR5ZdbZypIf1vzyFy9yKmAMWBu6BzBKfP7JhPc) | 2019-04-26 13:12:18 |
| 35 | Etienne Chauchot | [Structured streaming Spark Runner](https://s.apache.org/spark-structured-streaming-runner) | 2019-04-30 13:11:32 |
| 36 | Maximilian Michels | [Artifact Staging in Cross-Language Pipelines](https://docs.google.com/document/d/1XaiNekAY2sptuQRIXpjGAyaYdSc-wlJ-VKjl04c8N48) | 2019-05-07 13:21:30 |
| 37 | Udi Meiri | [Beam Type Hints for Python 3](https://docs.google.com/document/d/15bsOL3YcUWuIjnxqhi9nanhj2eh9S6-QlLYuL7ufcXY) | 2019-05-08 12:28:42 |
| 38 | Lukasz Cwik | [Beam Proposal: Pipeline Drain](https://docs.google.com/document/d/1NExwHlj-2q2WUGhSO4jTu8XGhDPmm3cllSN8IMmWci8) | 2019-05-08 15:58:04 |
| 39 | Kenneth Knowles | [Portable Beam Schemas](https://s.apache.org/beam-schemas) | 2019-05-09 04:05:18 |
| 40 | Jan Lukavsky | [@RequiresTimeSortedInput design doc](https://docs.google.com/document/d/1ObLVUFsf1NcG8ZuIZE4aVy2RYKx2FfyMhkZYWPnI9-c) | 2019-05-23 10:10:37 |
| 41 | Brian Hulette | [Portable Beam Schemas](https://docs.google.com/document/d/1uu9pJktzT_O3DxGd1-Q2op4nRk4HekIZbzi-0oTAips) | 2019-05-24 14:41:42 |
| 42 | Alireza Samadian | [Cost-based Optimization in Beam SQL](https://docs.google.com/document/d/1vi1PBBu5IqSy-qZl1Gk-49CcANOpbNs1UAud6LnOaiY) | 2019-05-31 18:54:48 |
| 43 | Lukasz Cwik | [Apache Beam Board Report Drafting Doc - June 2019](https://docs.google.com/document/d/1GY16lzVKL-mPh4M560AtqPAB1kXEptkhcBymvFr-4z8) | 2019-06-13 10:47:01 |
| 44 | Claire McGinty | [Apache Beam Design Doc - Sort Merge Bucket Source+Sink](https://docs.google.com/document/d/1AQlonN8t4YJrARcWzepyP7mWHTxHAd6WIECwk1s3LQQ) | 2019-06-17 17:12:15 |
| 45 | Lukasz Cwik | [Apache Beam Vendored Dependencies Release Guide](https://s.apache.org/beam-release-vendored-artifacts) | 2019-06-25 13:24:03 |
| 46 | Cyrus Maden | [Beam pipelines diagrams proposal](https://docs.google.com/document/d/1khf9Bx4XJWsKUD6J1eDcYo_8dL9LBoHDtJpyDjDzOMM) | 2019-06-25 16:16:56 |
| 47 | Lukasz Cwik | [Apache Beam Portability: Modeling, scheduling and executing timers](https://docs.google.com/document/d/1GRL88rKLHbMR0zJnBHYwM4xtj66VYlB112EWVUFcGB0) | 2019-06-27 18:38:57 |
| 48 | Rui Wang | [Retractions in Beam](https://docs.google.com/document/d/14WRfxwk_iLUHGPty3C6ZenddPsp_d6jhmx0vuafXqmE) | 2019-07-10 13:58:36 |
| 49 | Kenneth Knowles | [Streaming Beam SQL Extensions](https://s.apache.org/streaming-beam-sql) | 2019-07-18 13:51:09 |
| 50 | Rui Wang | [Lateness (and Panes) in Apache Beam (incubating)](https://docs.google.com/document/d/12r7frmxNickxB5tbpuEh_n35_IJeVZn1peOrBrhhP6Y) | 2019-07-18 14:16:59 |
| 51 | Rakesh Kumar | [Apache Beam Fn API: Fn State API and Bundle Processing](https://docs.google.com/document/d/1BOozW0bzBuz4oHJEuZNDOHdzaV5Y56ix58Ozrqm2jFg) | 2019-07-24 00:20:38 |
| 52 | Thomas Weise | [[Public] Beam Flink K8s](https://docs.google.com/document/d/1z3LNrRtr8kkiFHonZ5JJM_L4NWNBBNcqRc_yAf6G0VI) | 2019-07-25 00:00:52 |
| 53 | Eugene Kirpichov | [Running Splittable DoFn via Source API](http://s.apache.org/sdf-via-source) | 2019-07-25 17:09:02 |
| 54 | Anton Kedin | [Apache Beam Release Acceptance Criteria  - Google Sheets](https://s.apache.org/beam-release-validation#gid=1082148452) | 2019-07-25 17:39:20 |
| 55 | Rui Wang | [ZetaSQL Integration In BeamSQL](https://docs.google.com/document/d/14Yi4oEMzqS3n9-LfSNi6Q6kQpEP3gWTHzX0HxqUksdc) | 2019-08-04 14:06:53 |
| 56 | Kyle Weaver | [Beam Portable Job Jars](https://docs.google.com/document/d/1kj_9JWxGWOmSGeZ5hbLVDXSTv-zBrx4kQRqOq85RYD4) | 2019-08-06 20:03:02 |
| 57 | Daniel Oliveira | [Splittable DoFns for Go SDK](https://docs.google.com/document/d/14IwJYEUpar5FmiPNBFvERADiShZjsrsMpgtlntPVCX0) | 2019-08-07 14:57:39 |
| 58 | Tanay Tummalapalli | [[BEAM-7742] BQ file loads hardening](https://s.apache.org/beam-bqfl-hardening) | 2019-08-07 15:19:57 |
| 59 | Chad Dombrova | [[Flink Design] Fine Grained Resource Management](https://docs.google.com/document/d/1h68XOG-EyOFfcomd2N7usHK1X429pJSMiwZwAXCwx1k) | 2019-08-13 13:58:39 |
| 60 | Ning Kang | [Interactive Beam Pipeline Execution Design Overview](https://docs.google.com/document/d/1DYWrT6GL_qDCXhRMoxpjinlVAfHeVilK5Mtf8gO6zxQ) | 2019-08-13 20:00:01 |
| 61 | Lukasz Cwik | [Apache Beam Fn API: Fn State API and Bundle Processing](https://s.apache.org/beam-fn-state-api-and-bundle-processing?) | 2019-08-14 11:13:38 |
| 62 | Maximilian Michels | [Caching in the Fn API](https://docs.google.com/document/d/1ltVqIW0XxUXI6grp17TgeyIybk3-nDF8a0-Nqw-s9mY) | 2019-08-14 12:50:01 |
| 63 | Robert Bradshaw | [Simplifying Beam Pipelines](https://s.apache.org/no-beam-pipeline) | 2019-08-23 14:36:31 |
| 64 | Sam Bourne | [Apache Beam Containers](https://docs.google.com/document/d/1IKE_aEkrAzkzUE4pD_r_zVuL5amHGetJ1efnbTfmunM) | 2019-08-28 19:39:02 |
| 65 | Lukasz Cwik | [Apache Beam (Incubating) Pipeline Runner API Proposal](http://s.apache.org/beam-runner-api) | 2019-08-30 11:36:29 |
| 66 | Pablo Estrada | [Performance of Apache Beam doc pages](https://s.apache.org/beam-ga-report) | 2019-09-06 13:47:48 |
| 67 | Alexey Strokach | [File and Stream Caching in Apache Beam](https://docs.google.com/document/d/1sISjl4Q60mR1V22R1UZd417wVEn_EmZT-SalTHXG4H0) | 2019-09-06 15:30:23 |
| 68 | Lukasz Cwik | [FileIO.write](http://s.apache.org/fileio-write) | 2019-09-11 13:45:01 |
| 69 | Kenneth Knowles | [Apache Beam Board Report Sept 2019](https://docs.google.com/document/d/1NIoeLvJPCirsFRy0F_OBYLr3zdcTRPHr-gH3a5cLJBE) | 2019-09-11 16:19:41 |
| 70 | Bharath Kumara Subramanian | [Async ParDo API for Apache Beam](https://docs.google.com/document/d/1t--UYXgaij0ULEoXUnhG3r8OZPBljN9r_WWlwQJBDrI) | 2019-09-13 12:31:27 |
| 71 | Etienne Chauchot | [Watermarks and multiple aggregates in Spark strucutred streaming](https://docs.google.com/document/d/1IAH9UQJPUiUCLd7H6dazRK2k1szDX38SnM6GVNZYvUo) | 2019-09-18 09:18:25 |
| 72 | Cam Mach | [Beam KinesisIO V2 Migration](https://docs.google.com/document/d/1XeIVbiDHBReZY8rEI2OWA3cTEQuaR7RPdwGAup6S1DM) | 2019-09-30 08:02:08 |
| 73 | Kirill Kozlov | [Beam SQL Filter/Project push-down](https://docs.google.com/document/d/1-ysD7U7qF3MAmSfkbXZO_5PLJBevAL9bktlLCerd_jE) | 2019-09-30 13:55:34 |
| 74 | Jan Lukavsky | [KeyedPCollection design doc](https://docs.google.com/document/d/1fdAz-IvFQ3xxYOGskByo_9lI82iQlAtPvZHZb-h3z20) | 2019-10-15 11:16:03 |
| 75 | Pablo Estrada | [Streaming Fn API Runner](http://s.apache.org/streaming-fn-runner-py) | 2019-10-15 17:10:24 |
| 76 | Lukasz Cwik  | [Apache Beam Fn API: Processing a Bundle](https://s.apache.org/beam-fn-api-processing-a-bundle) | 2019-10-17 10:06:30 |
| 77 | Chad Dombrova | [Kubernetes native integration](https://docs.google.com/document/d/1-jNzqGF6NfZuwVaFICoFQ5HFFXzF5NVIagUZByFMfBY) | 2019-10-19 14:54:43 |
| 78 | jincheng sun | [Apache Beam Fn API: DoFn Teardown](https://docs.google.com/document/d/1sCgy9VQPf9zVXKRquK8P6N4x7aB62GEO8ozkujRSHZg) | 2019-10-21 07:26:53 |
| 79 | Luke Cwik | [Apache Beam Fn API: SDK Harness container contract](https://docs.google.com/document/d/1n6s3BOxOPct3uF4UgbbI9O9rpdiKWFH9R6mtVmR7xp0) | 2019-10-21 14:05:26 |
| 80 | Ryan Skraba | [Slack](https://s.apache.org/beam-slack-channel) | 2019-10-23 12:32:03 |
| 81 | Robert Burke | [Splittable DoFns for Go SDK](https://s.apache.org/beam-go-sdf) | 2019-10-28 12:14:47 |
| 82 | Yichi Zhang | [Expose SDKHarness status to runner](https://docs.google.com/document/d/1W77buQtdSEIPUKd9zemAM38fb-x3CvOoaTF4P2mSxmI) | 2019-10-29 15:14:04 |
| 83 | Pablo Estrada | [Performance of Apache Beam doc pages](http://s.apache.org/beam-ga-report) | 2019-11-06 20:41:01 |
| 84 | Heejong Lee | [Runner Validation Test Plan for Cross-language transforms](https://docs.google.com/document/d/1xQp0ElIV84b8OCVz8CD2hvbiWdR8w4BvWxPTZJZA6NA) | 2019-11-08 20:27:41 |
| 85 | Reza Rokni | [HLL in Beam](https://s.apache.org/hll-in-beam) | 2019-11-12 21:35:21 |
| 86 | Kenneth Knowles | [DRAFT - Apache Beam Board Report - December '19](https://docs.google.com/document/d/1AJT5j-qRLJPeN5x6nbHD5KqadXLM0zT0Ugmiy_vQ7C8) | 2019-12-12 00:07:40 |