pre-release: PyOhio meeting announcement

Please take a moment to review your details and reply with OK or edits.
Subject and below is what will go out and also will be used to title the videos.

Subject: 
ANN: PyOhio at Cartoon 1 Sat July 29, 9p


PyOhio
=========================
When: 9 AM Saturday July 29, 2017
Where: Cartoon 1

https://www.pyohio.org/2018/

Topics
------
1. Keynote: Py in the Sky
Qumisha Goss
tags: plenary
Creating a more diverse Programming community using Libraries as a gateway to reach  diverse and under-served populations. How Python and Computer Science can be used to create opportunities for under served populations. Creating Diversity by meeting people where they are instead of trying to entice them to join you.
 recording release: yes license: CC BY  

2. **Opening remarks**

tags: plenary
(Needs description.) 
 recording release: no  

3. Capacity and Stability Patterns
Brian Pitts
tags: talk
At Eventbrite, engineers are tasked with building systems that can withstand dramatic spikes in load when popular events go on sale. There are patterns that help us do this. Come learn about these patterns, how Eventbrite has adopted them, and how to implement them within your own code and infrastructure.
 recording release: yes license: CC BY  

4. Helping your manager be a better leader for you
Christopher H. Laco
tags: talk
How can you be a better manager? How can you help your manager be a better manager for you? In this talk we'll talk about these things and build a better bridge between developers and their managers so we can build stronger teams together from the bottom up.
 recording release: yes license: CC BY  

5. How We Changed The World With Open Source
Ed Finkler
tags: talk
In June 2012, podcaster and vet web dev Ed Finkler spoke openly about his lifelong struggles with mental illness. 4 years later, a non-profit corporation with 3 dozen volunteers is working to change the tech and open source community. In this talk, Finkler tells the story of how the episode happened, the incredible response, and how it grew into a charity dedicated to changing an industry.
 recording release: yes license: CC BY  

6. Bokeh: Interactive Data Visualization in Python (Tutorial)
Steven C. Howell
tags: tutorial
Bokeh is a powerful library for creating interactive data visualizations in the style of D3.js without writing JavaScript.  In this tutorial, you will learn to use Bokeh to

  - create simple interactive plots, both from scripts and Jupyter notebooks
  - link interactive visualizations to a running python instance
  - plot streamed data
  - interactively view large datasets with Datashader
 recording release: yes license: CC BY  

7. Building an awesome community around an open source project
Tim Abbott
tags: talk
Zulip is a beautiful open source alternative to Slack, optimized for productivity.

The Zulip project has grown from 1 to 300 contributors in about 18 months, with
more commits merged per week than Docker and Django combined.

This talk will tell Zulip's story, emphasizing the specific, reusable, techniques we used to build our 
open source project and make the community successful.


 recording release: yes license: CC BY  

8. Hypothesis: Tests That Write Themselves
David Kua
tags: talk
Testing is generally seen as a Good Thing™ that one should do. Writing tests that are comprehensive and cover all possibilities however can be time-consuming, hard, or even downright impossible. Property-based testing is one method that can help with this. This talk will introduce the concept of property-based testing and how to do it yourself using the Python library Hypothesis.
 recording release: yes license: CC BY  

9. Running Vintage Software: PyPI's Aging Codebase.
Ernest W. Durbin III
tags: talk
The Python Package Index, lovingly known as The Cheeseshop to some, has grown enormously since it's introduction in 2002. As a critical piece of the Python Community's infrastructure, it has suffered many growing pains over the years. Let's review the recent history of PyPI, lessons learned, and techniques applied to keep it running.
 recording release: yes license: CC BY  

10. Integration Contract Testing and its potentials for API development and maintenance
John Roach
tags: short-talk
You just finished a patch for your API. Your unit tests pass. You have some end to end tests that cover most of the user facing features. You merge in your code and after a smooth deployment, all hell breaks loose. The microservice that the other team was developing doesn't understand what your new patch is sending as a response! What went wrong? This is a quick talk about contract based testing.
 recording release: yes license: CC BY  

11. Coffeebot 3000 - An IoT story with a RaspberryPI, Redis, LEDs, and Mario
James Alexander
tags: short-talk
This is a story about the creation, maintenance and on-going features built onto an IoT device to measure the amount of coffee in a coffee pot.
 recording release: yes license: CC BY  

12. From Lumberjack to Python Developer
Scott Stahl
tags: short-talk
There's a been lot of talk over the past few years about workforce retraining and software bootcamps. So what's the reality? I will tell the story of rebooting my career at 30 from working in lumber & building materials to becoming a developer, share some thoughts on why it worked for me and some of the lessons learned from my first year on the job.
 recording release: yes license: CC BY  

13. You have an API, now what? Client time!
Richard Harding
tags: short-talk
Client libraries for your API in the languages your users are coming from are vital to getting adoption and establishing the best practices for putting your API to work. We discuss how and why you need to provide the client libraries and why this may drive adoption more than the API itself.
 recording release: yes license: CC BY  

14. Python for Java Developers
Christian Wyglendowski
tags: short-talk
Did you learn Java in school but want to get into Python? Are you a decision maker trying to choose between Java and Python for your next project? This talk will cover a variety of differences between Java and Python and why they matter.
 recording release: yes license: CC BY  

15. Those Who Care, Teach!
Kenneth Love
tags: short-talk
There's nothing better than helping someone learn a tricky concept: a complex regular expression, a build tool, or even running their first script ever! Unfortunately, though, teaching is hard! For many, going beyond the show-and-tell we do with coworkers is just too intimidating. Let me teach you tips, tricks,  and tools I've collected over years of teaching Python to thousands of people.
 recording release: yes license: CC BY  

16. Using Machine Learning to play chess
Aubhro Sengupta
tags: short-talk
Today, chess engines contain many lines of code handcrafted under the guidance of grandmasters. Are you interested in being knee deep in chess theory just to crank out a half decent engine? No? This talk is for you. Why not create an engine that learns to improve itself? 
 recording release: yes license: CC BY  

17. SubTests are the Best
Dmitriy Chukhin
tags: short-talk
Testing the code we write is important, so we should use available tools to write tests that are readable, thorough, and DRY (Don't Repeat Yourself). Subtests, added in Python3.4, make accomplishing each of these three goals easier. This talk goes through some examples of how subtests make testing 1) more readable, 2) more thorough, and 3) more DRY. The result: better apps and fewer bugs.
 recording release: yes license: CC BY  

18. A brief introduction to concurrency and coroutines (Tutorial)
Eric Appelt
tags: tutorial
This tutorial will introduce concurrency through python coroutines. Using a simple "slow" web service for an example, we will explore writing a client to perform concurrent requests, and then how to write the example service itself. The tutorial will also consider the purpose of concurrent programming, how concurrency differs from parallelism, and will discuss python syntax for coroutines.
 recording release: yes license: CC BY  

19. Machine learning in production with scikit-learn
Jeff Klukas
tags: talk
The Python data ecosystem provides amazing tools to quickly get up and running with machine learning models, but the path to stably serving them in production is not so clear. We'll discuss details of wrapping a minimal REST API around scikit-learn, training and persisting models in batch, and logging decisions, then compare to some other common approaches to productionizing models.
 recording release: yes license: CC BY  

20. Paho Silver, Away! Saddle up to IoT with MicroPython
Greg Svoboda
tags: talk
The IoT market is set to grow to over 250 BILLION dollars by 2020- it’s time to get YOUR piece. This session will give attendees an interactive demonstration on the amazing Python IoT-stack using Mosquitto, MicroPython, and the Paho Library. You will walk away with a solid understanding of the architecture and frameworks necessary to build a complete IoT solution of your own.
 recording release: yes license: CC BY  

21. Transitioning from Science to Tech: One Astrophysicist's Journey
Elizabeth Wehner
tags: talk
Changing careers can be intimidating! In this talk, I'll share how I made the transition from astronomer to full stack web developer, and built up a career in tech.
 recording release: yes license: CC BY  

22. Multimethods? In MY Python?
Lindsey Brockman
tags: talk
A benefit of using a dynamically typed language like Python is the ability to create a function that can operate on arguments of unknown types. Unfortunately, this freedom can lead to a common antipattern where the function is responsible for type-cheaking each argument before operating accordingly. This talk will explore avoiding this antipattern with multimethods.

 recording release: yes license: CC BY  

23. Python and Spreadsheets: 2017 Edition
Kojo Idrissa
tags: talk
Spreadsheet files are often used to share interesting & important data. But spreadsheet applications aren't always the best tool for processing that data. I'll show you how to use OpenPyXL to work with that data in a way that's better than using .csv files. I'll also discuss common problems faced when working with spreadsheets via code. "State of the art" moves fast here, thus the title.

 recording release: yes license: CC BY  

24. Postgres Performance for Humans
Craig Kerstiens
tags: talk
To many developers the database is a black box. You expect to be able to put data into your database, have it to stay there, and get it out when you query it... hopefully in a performant manner. We'll go from basics to the more advanced of what you need to know to keep things running smoothly.
 recording release: yes license: CC BY  

25. **Saturday Lightning Talks**

tags: lightning
* [(00:00)](http://youtu.be/vEtR6ZuAWtE?t=0h0m0s) Everything I Know About Web Design I Learned From Geocities by Stephanie Slattery
* [(05:08)](http://youtu.be/vEtR6ZuAWtE?t=0h5m8s)  Intro to PyTest by Leigh Stauffer
* [(09:20)](http://youtu.be/vEtR6ZuAWtE?t=0h9m20s) Python's AST Module by Igor Ferst
* [(13:25)](http://youtu.be/vEtR6ZuAWtE?t=0h13m25s) Bootstrap Raspberry Wiki w/ Python by Dave Steele - Notes: It sounds like there is someone saying "Testing" near the middle (like the old Votrax speech synthesizer).. This is part of the demo. Believe that's Festival talking.
* [(18:40)](http://youtu.be/vEtR6ZuAWtE?t=0h18m40s) Organizing Django Girls Columbus by Neelam Joshi
* [(19:44)](http://youtu.be/vEtR6ZuAWtE?t=0h19m44s) Honesty, Kindness, and Inspiration: Pick Three by Jacob Stoebel
* [(23:27)](http://youtu.be/vEtR6ZuAWtE?t=0h23m27s) React Forms from SQLAlchemy by Randy Syrinz?
* [(27:35)](http://youtu.be/vEtR6ZuAWtE?t=0h27m35s) Penny University (a peer to peer learning community) by John Berryman
* [(32:26)](http://youtu.be/vEtR6ZuAWtE?t=0h32m26s) Intro to Tensor Flow by Wes Eklund
* [(37:38)](http://youtu.be/vEtR6ZuAWtE?t=0h37m38s) Security Hygiene for Software Professionals by Matt Behrens
* [(42:39)](http://youtu.be/vEtR6ZuAWtE?t=0h42m39s) Become a Django Girl by Dan Lindeman? and Rachel Calhoun
* [(48:13)](http://youtu.be/vEtR6ZuAWtE?t=0h48m13s) Closing remarks / Sprint pleas
 recording release: yes license: CC BY  

26. Build a Chat Bot with Chuck Norris, Python and Docker (Tutorial)
Hank Preston
tags: tutorial
In this session we build a Chuck Norris joke-telling Chat Bot! We'll write our bot using Python and package it up as a Docker image. You'll learn about Webhooks and their importance in cloud applications, Micro-Services and the Cisco Spark Collaboration Cloud. This session is designed to be fun and hands on, so make sure to bring your laptop, sense of humor and great questions!
 recording release: yes license: CC BY  

27. Everything is broken, and I don't know why.
Matt Robenolt
tags: talk
We all have someone on our team who writes code with bugs in it. Not us, of course, but someone else. This code somehow gets into production and this code just maybe sometimes crashes. How can we detect these issues and extract useful information at runtime so we can fix these bugs? What kind of stuff should we even be looking for?
 recording release: yes license: CC BY  

28. Sipping Web Development from a Flask
Ian Zelikman, Brad Hurley
tags: talk
This talk aims to give introduction to web development using Flask.

After an introduction to Python web development ecosystem, we will focus on developing a production ready application using Flask, a suggested structure for your application, and how to tackle some unique challenges we encountered.
 recording release: yes license: CC BY  

29. U is for Unicode: Solving the Mystery
Greg Back
tags: talk
This talk will attempt to resolve some of the mystery and confusing behavior about Unicode (and other text encoding issues) in Python. It will cover Python handles text in general, the differences in Unicode text between Python 2 and Python 3, how various standard library APIs handle Unicode text, and a bit about detecting the encoding of unknown text.
 recording release: yes license: CC BY  

30. Introduction to Debugging with Python
Craig Maloney
tags: talk
Ever since a moth was discovered in the Mark II computer we've dealt with bugs in software. This talk will show different methods for determining what the code is doing. We'll start with the lowly print statement and introduce advanced forms of logging. We'll also cover several Python debuggers and talk about best practices for debugging and preventing bugs in Python code.
 recording release: yes license: CC BY  

31. Accessibility: It's Not Just a Client Side Problem
Stephanie Slattery
tags: talk
Roughly 1 in 5 people in America live with a disability. It would be irresponsible to ignore the needs of all our users when developing our code, but isn't this just something for people who wrote client side code to worry about?  In this talk, I'll explain the basics of accessibility and how you can advocate for it across the stack.
 recording release: yes license: CC BY  

32. To Infinity and Beyond: Computer Vision for Astronomy
Ryan Fox
tags: talk
This talk is about computer vision and image processing.  It covers applications in astronomy, as well as more terrestrial ones.  Next, it outlines how you can use them with the photos you already take.  Finally, it discusses how developers can build specialized tools to enhance their abilities, and why actually doing so is often surprising.
 recording release: yes license: CC BY  

33. aria-owns="lets-make-forms-accessible"
Tina Bell Vance, Kat Passen
tags: talk
Let's make forms accessible! We're going to make forms more accessible in Flask with Jinja templating and JavaScript. We'll go through what's possible in Jinja and what may need extra work.
 recording release: yes license: CC BY  

34. Creating Reproducible Data Science Workflows using Docker Containers
Aly Sivji
tags: talk
Jupyter notebooks make it easy to create reproducible workflows that can be distributed across groups and organizations. This is a simple process provided that our end-users have access to the data along with a compatible Python environment. Learn how to use Docker to package a shareable image containing the libraries, code, and data required to reproduce every calculation.
 recording release: yes license: CC BY  

35. Serializing Data with Google's Protocol Buffers
Paul Kerchen
tags: talk
This talk is an introduction to Google's protocol buffers (aka protobuf). Protocol buffers are a language-neutral, platform-neutral, extensible mechanism for serializing structured data – think XML, but smaller, faster, and simpler. This talk will include a demonstration of using protobuf with Python to communicate with an embedded, processing- and memory-restricted device.
 recording release: yes license: CC BY  

36. Building a world class document pipeline using Python
Andrew Wolfe
tags: talk
At Brokersavant, we process large quantities of real estate assets ranging from commercial property flyers to large real estate leases and our customers expect a lightning fast turn around. Learn how we leveraged  open source technologies and Python libraries to create a system that scales to millions of assets per day without missing a beat.
 recording release: yes license: CC BY  

37. The Humane Technical Interview
Katie Cunningham
tags: talk
Nearly everyone in tech has to take part in a technical interview during their career, but are we doing them right?
 recording release: yes license: CC BY  

38. Rapid Prototyping In Data Science With Big Data & Python
David Ziganto
tags: talk
Rapid prototyping in data science often hits a wall when data is too large to fit into memory. When this happens, teams are often confronted with two options: sampling techniques or porting to Apache Spark. Both have significant drawbacks. In this talk, I'll demonstrate how to leverage Dask and Scikit-learn to solve this problem.
 recording release: yes license: CC BY  

39. Lazy is too hard! Use PDFs with Python the Robust Way
Kenneth Durril
tags: talk
Lazy is too hard. When I had 40,000 PDFs and needed to extract their data, I knew that the "lazy" approach was insufficient. This talk reviews tools to tame PDFs with confidence. I'll use my open-data project's workflow as an example (ETL anyone?). It's also a follow-up/response to PyOhio2016's "We Don’t Need No Stinkin’ PDF Library: Build PDFs with Python the Lazy Way".
 recording release: yes license: CC BY  

40. i_heart_meetings.py: Showing the Costs of Meetings and Finding a Better Way
Drew Sullivan
tags: talk
We've all sat through boring/wasteful meetings. I wanted to find a solution. So I made a Python app that connects with the Google Calendar API, gets all the events in a period and posts the costs of each event to Slack. A following poll asks if it was worth the costs. I would like to describe how it was made and how we can make meetings valuable and engaging, instead of boring wastes of time.
 recording release: yes license: CC BY  

41. Hitting the Pavement with Python: Pt1
Josh Francisco
tags: talk
Using python to interact with aftermarket engine management controllers. Part 1 will focus on the initial discovery of the controller's serial protocol, communicating with the controller over a serial port, unpacking the byte stream, and using Redis as a mechanism to store and radiate data.
 recording release: yes license: CC BY  

42. The Art of Mentoring and Being Mentored (because we are all always both)
Jess Unrein
tags: talk
Let’s explore the lifecycle of a mentorship. Mentorships are relationships like any other that need to be started, maintained, and ended with intentional effort and care. We’ll talk about how to identify, grow, and gracefully end mentoring relationships.
 recording release: yes license: CC BY  

43. Building Delivery Pipelines with Jenkins' Pipeline as Code
Kevin Fox
tags: talk
Jenkins is the "leading open source automation server". New in 2016, Jenkins version 2 introduced a robust, extensible approach to managing complex automation pipelines as code. Jenkins' Pipeline as Code serves as a solid foundation for a team's continuous delivery practices.  Kevin Fox provides a practical overview of this important new capability for a popular open source platform.
 recording release: yes license: CC BY  

44. Elasticsearch in an Hour
John Berryman
tags: talk
The use of search is ubiquitous. As a developer you need search in your technology tool belt. This talk introduces Elasticsearch, a front-running, open source search technology. We'll create an application, execute a search, and dive into internals so that you'll know where search is most useful.
 recording release: yes license: CC BY  

45. **Sunday Lightning Talks**

tags: lightning
* [(00:00)](?t=0h0m0s) Nose to PyTest, by Reesen Dennis
* [(05:07)](?t=0h5m7s) Django API and Github -> COS, by Oludare Olugbem
* [(10:09)](?t=0h10m9s) ???, by Matt Wilson
* [(13:15)](?t=0h13m15s) Replacing Tedium with Computer Vision, by 
* [(18:15)](?t=0h18m15s) Why You Should Care About Bitcoin, by Joe Dunco
* [(22:52)](?t=0h22m52s) ??? by Brian Pitts
 recording release: yes license: CC BY  



Location
--------
Cartoon 1


About the group
---------------
===
https://pyohio.org

A FREE annual conference for anyone interested in Python in and around Ohio, the entire Midwest, maybe even the whole world.