PyCon 2016 in Portland, Or
hills next to breadcrumb illustration

Sunday 1:30 p.m.–3 p.m.

Google Tech Talk Series: How I Learned to Stop Worrying and Love Python at Google

wesley chun


Continuing with tradition, our sponsor workshop session features three awesome half-hour Python tech talks at they relate to Google. Hear about Python tools we’ve built in-house, using Python with Google developer tools to build your web & mobile applications with, or best practices on how we use Python internally at Google. You’re invited to stop by and hear from world-class Google engineers!


**The moderator:** WESLEY CHUN is the author of Prentice Hall's bestselling [Core Python]( series, co-author of [Python Web Development with Django](, and has written for Linux Journal, CNET, and InformIT. In addition to being an engineer and Developer Advocate at Google, he runs [CyberWeb](, a consultancy specializing in Python training. He has over 25 years of programming, teaching, and writing experience, including more than a dozen with Python. While at Yahoo!, Wesley helped create Yahoo! Mail & Yahoo! People Search using Python. He holds degrees in CS, Math, and Music from the University of California and can be reached on Google+ ([+WesleyChun]( or Twitter ([@wescpy]( ## Talk #1. Understanding and Controlling Memory Utilization At Scale **Speaker:** Aaron Tubbs, YouTube, San Bruno **Abstract:** With over a billion users, YouTube is a massive part of the Internet. YouTube's web application architecture uses Python to serve up billions of views per day without breaking a sweat. This talk provides a brief dive into the server architecture and presents the good, bad, and ugly of YouTube's long-lived preforking worker concurrency model. The focus is on how to achieve efficient and predictable memory utilization. Topics covered include shared memory considerations, allocator interactions, and garbage collection behavior. **Speaker’s Bio:** AARON TUBBS is a recovering manager re-learning how to read and write code. He works as a software engineer at Google on YouTube's application server infrastructure. He previously specialized in financial information visualization. Pie charts are his kryptonite. ## Talk #2. Python & Dataflow **Speaker:** Silviu Calinoiu, Google, Mountain View **Abstract:** Isn’t is strange that we run our big data Python jobs often atop the JVM? I think so. This spring Google released a pure Python SDK for Dataflow, which will soon join the Apache Beam project. Beam is an open source large scale data processing framework based on Google’s years of MapReduce and stream data processing experience. This includes a unified batch and stream API as well as using event times to handle late arriving data. This talk is about how the Beam stack works and where the Python SDK fits in. We'll talk about some of the interesting design challenges and opportunities we encountered in creating a native Pythonic API for Dataflow, which was formerly only expressed in Java, touching on topics such as gradual typing and type safety, function and data serialization, performance, and interactivity. We’ll wrap with an expansive demo highlighting integrations including, machine learning (TensorFlow), analytical databases, stream ingestion sources, and notebooks (jupyter). **Speaker’s Bio:** SILVIU CALINOIU is the technical lead for Cloud Dataflow for Python at Google. His team works hard to catch up with the more advanced Java version which is now an Apache incubation project called Apache Beam. Before this project he worked for two years in the Google App Engine group and before that he spent an unmentionable number of years in the Microsoft Windows kernel group developing various tools to detect and analyze memory corruptions, deadlocks and other exotic bugs. ## Talk #3. Pynini: Finite-state grammar compilation in Python **Speaker:** Kyle Gorman, Google, New York **Abstract:** Google's speech and language products like OK Google depend on thousands of hand-written grammar files to handle various types of "non-standard words" like number expressions, dates and times, and the like. Pynini ( is an open-source Python extension which allows users to compile regular expression-like grammar rules into a computationally-efficient representation---weighted finite-state transducers (WFSTs)---combine rules using operations like composition or union, optimize these rules for space and time efficiency, and apply them to strings of input data. After reviewing the the library's core functions, we demonstrate how we use Pynini to build grammars which convert cardinal numbers like "4,925" to spoken forms like "four thousand nine hundred twenty five". **Speaker’s Bio:** KYLE GORMAN is a software engineer with the Speech and Language Algorithms team at Google, working out of the New York office. Before joining Google he was assistant professor at the Center for Spoken Language Understanding at the Oregon Health & Science University in Portland. He lives in Brooklyn and loves all different kinds of kale.