Sponsor Tutorials

<br> <blockquote class="callout" style="text-align: center; width: 60%; padding: 10px; margin:auto;"> <h3>PyCon 2018 Sponsor Workshops Schedule</h3> <h4>See this schedule in grid form <a href="/2018/schedule/sponsor-tutorials">here</a></h4> </blockquote>

A Whirlwind Tour of Google Cloud Services

Jon Wayne Parrott, Brian Dorsey
Thursday 1:30 p.m.–3 p.m. in Room 25C

ABSTRACT: Did you know Google offers object recognition as an API? Join us for a rapid tour of services you can add to your applications to save time and add features to delight your users! All of these services can be used wherever your core application is running -- as long as it has internet access. :) - Identify objects and locate faces in photos & videos with Cloud Vision. Also speech to text and back! - Easy, scalable logging with Google Stackdriver, then extract and graph metrics from those logs. - Interactively query all of your logs (or any other data) with BigQuery. - Connect your distributed processes with fast and reliable messaging using Cloud PubSub. - And maybe more? Or less! It will be interesting and useful. This is explicitly a sponsored product tour - we promise to focus on solving real problems with these tools and to include lots of interactive hands-on demos and example code. Some of the demos will be easy to follow along on your own laptop. Please bring yours if that sounds interesting!

End to End Machine Learning with Python in IBM Watson Studio

Greg Filla
Thursday 1:30 p.m.–3 p.m. in Room 13

Watson is the AI platform for business, powered by data. Watson can turn unstructured business data into actionable insights that enhance decision making. Watson understands the world in the way that humans do through senses, learning, and experience. It learns at scale, reasons with purpose and interacts with humans naturally. ibm.com/cloud/watson-studio

Building serverless applications with AWS Chalice

James Saryerwinnie
Thursday 3:30 p.m.–5 p.m. in Room 25C

Serverless applications make it easy for you to run your code without managing servers. AWS Chalice is a serverless Python framework for getting your serverless application up and running in minutes. In this tutorial, you'll learn how to build a serverless application using AWS Chalice. We will cover authoring a RESTful service that leverages Amazon API Gateway and AWS Lambda as well as various deployment options.

Datadog: Distributed Tracing for Python

Michael Whetten
Thursday 3:30 p.m.–5 p.m. in Room 13

Tracing is a specialized form of logging that is designed to work effectively in large, distributed environments. When done right, tracing follows the path of a request across process and service boundaries. This provides a big step-up in application observability and can help inform a developer why certain requests are slow, or why they might have behaved unexpectedly. This tutorial will familiarize users with the benefits of tracing, and describe a general toolkit for emitting traces from Python applications in a minimally intrusive way. We will walk through a simple example app, which receives an HTTP request and gradually instrument it to be observable via traces. We will discuss language constructs that can generate traces - namely decorators, monkey-patching and context managers - and give users hints on how they might add tracing to their own applications and libraries. In the process, users will become familiar with the existing standards for modeling traces, and some of the challenges involved in adhering to this model in a distributed, asynchronous environment.

Data science and Engineering at Shopify

Chris Fournier, Françoise Provencher
Thursday 9 a.m.–10:30 a.m. in Room 23

Shopify’s workshop will be a series of two 45 minute tech talks on our use of Python and its ability to make commerce better for everyone. Shopify is the leading cloud-based, multi-channel commerce platform where entrepreneurs can design, set up, and manage their stores across multiple sales channels. With a decade worth of data, we are able to build products using Python that help our entrepreneurs run their businesses everyday. We'll hear about how Python is particularly useful when it comes to understanding our user base by sifting through tons of data from Françoise Provencher and about how PySpark can be used to reliably process data to feed reports, dashboards, and products from Chris Fournier.

Deploy Your Python Apps Quickly with Heroku

Ian Stapleton Cordesco
Thursday 11 a.m.–12:30 p.m. in Room 23

A crash course on deploying Python applications to Heroku. We'll take a pre-made Django app, spin it up locally, then deploy it to Heroku. We'll then go over the tools that Heroku provides for managing your applications.

Using Python with the Google Admin SDK APIs

Chris Coykendall
Thursday 3:30 p.m.–5 p.m. in Room 23

Part 1 Tired of repeatedly pressing buttons or manually copying things into Google Sheets? This talk will demonstrate how to get started with bypassing the UIs for Google products and make repetitive work much easier. The focus will be for business use cases on G Suite primarily and will dive into practical automation using Python with the Google Admin SDK APIs, but the patterns and practices can be applied to most all Google APIs. Speaker: Chris Coykendall is a Site Reliability Engineer (SRE) at Google on G Suite infrastructure, and co-author of chapters in the upcoming O'Reilly book "The Site Reliability Workbook". He currently works with the Google Admin SDK and Google Device Policy teams to ensure they are highly reliable and scalable. Chris is an internal reviewer of Python code style at Google and has worked in various engineering roles at Google for 5 years. Part 2 A Deep Dive into Monte Carlo Tree Search, the algorithm behind AlphaGoZero Speaker: Monte Carlo Tree Search (MCTS) is an algorithm that searches over a game tree for the best move, balancing between exploring unlikely moves and reading more deeply into likely moves. AlphaGoZero used it to great success, using a combination of MCTS and deep learning to bootstrap from random moves to superhuman levels of play. In this talk, one of the lead developers of MiniGo (an AlphaGoZero replication) explains how and why MCTS works. The talk will also dive into details of a performant Python/NumPy implementation. Some familiarity with Python assumed. No prior knowledge of NumPy or machine learning is needed. Brian Lee is a software engineer at Verily, where he works on problems in the intersection of machine learning and healthcare. In his spare time, he shaves yaks. He is a Recurse Center alum and is mostly self-taught.

Let's build a Slack app!

Jason Roche
Thursday 11 a.m.–12:30 p.m. in Room 13

In this workshop, we'll guide you through the process and tools needed to build your first Slack bot. We'll go over our Python SDKs, walk through an example app and talk about what's going on under-the-hood as your app interacts with Slack's APIs. This workshop will be beginner-friendly, but also allow those with prior experience with Slack to learn about new features, tools and ask us questions directly.

Managing Dependencies & Runtime Security

Pete Garcin
Thursday 9 a.m.–10:30 a.m. in Room 13

In this workshop we’ll explore working with complex dependency trees in Python, learn about how to quickly configure virtual environments, as well as how you can implement zero-discipline runtime security scanning for your applications. ActiveState’s ActivePython distribution and the newly launched ActiveState platform provide solutions to these problems in simple and powerful ways. During this workshop, we’ll walk through: - How you can use the ActivePython distribution to have a pre-configured, pre-built environment for many common development tasks and avoid dealing with complex build steps for dependencies. - How to configure a virtual environment for your project - How to integrate ActiveState’s runtime interpreter plugin to either ActivePython or your existing Python distribution to achieve zero-discipline security reporting - A demonstration of how the new ActiveState platform sets you up to solve these problems and more in a simple, powerful manner"

Python with Visual Studio and Visual Studio Code

Steve Dower
Thursday 11 a.m.–12:30 p.m. in Room 25C

Tips and tricks for a more productive developer Developers have many choices when it comes to writing Python code from editors to IDEs, from free tools to paid, from tools designed specifically for their platform to tools running on many, from open source to closed source tools and so on… In this demo-driven session, we’ll show you why we think the cross-platform, free, and open source Visual Studio Code will become your favorite tool for all your Python needs. From editing to linting, to debugging and more, you will learn how to get started, as well as tips and tricks to save you time in your everyday development lifecycle. You will also learn when to consider Visual Studio 2017, which for certain scenarios (such as mixed C and Python development), can offer you more than any other Python tool on the planet.

Standardized Data Science: The Team Data Science Data Process

Buck Woody
Thursday 9 a.m.–10:30 a.m. in Room 25C

With a practical, example in Python. In dealing with hundreds of Data Science teams around the world, our team has had a consistent request: A proven, standardized methodology for Data Science that folds into standard IT practices (such as SDLC’s and DevOps) and governance. The Team Data Science Process (TDSP) is a robust, yet flexible, fully-documented and defined process you can use for consistent, successful Data Science projects. The TDSP takes into account all phases, roles, and skills in a solution. Buck Woody, an Applied Data Scientist from Microsoft Research and AI, will explain how the TDSP works, provide you resources to use in your organization, and walk you through a practical example using Python.

The Five Kinds of Python Functions

Steven Lott
Thursday 1:30 p.m.–3 p.m. in Room 23

Audience level: Intermediate We'll look at the wide variety of ways that we can leverage Python functions. This will show provide helpful background in ordinary functions, as well as callable objects and lambdas. We'll look closely at how to use generator functions, also. The fifth type of function is a function wraps a special method, like len().