PyCon 2016 in Portland, Or
hills next to breadcrumb illustration


Accepted Posters

The **Poster Session** takes place in the Expo Hall on the final morning of the three main conference days, on **Wednesday 2016 June 1** from **10:00am – 1:10pm**. For background on the poster presentation format, you can read the [Proposing a Poster]( page from this year’s call for proposals.

Composable multi-threading for Python libraries

Anton Malakhov in Python Libraries

Python is popular among numeric communities that value it for easy to use number crunching modules like Numpy/Scipy, Dask, Numba, and many others. These modules often use multi-threading for efficient parallelism (on a node). But being used together in one application, their thread pools can interfere with each other leading to overhead and inefficiency. We'll show how to fix this problem.

PymeSync, the Python interface to the TimeSync API

Matthew Johnson in Python Libraries

The TimeSync API is an Open Source centralize time tracking API. Its simple, powerful REST API makes it easy to hook comprehensive time tracking and reporting into any workflow. PymeSync is a python module providing full access to the TimeSync API.

Making Climate Forecasts with Python and Numpy

Melissa Ou in Science

Python and Numpy can be used to perform quick analyses on large datasets, which is especially important for weather and climate prediction and monitoring. This presentation will show how Python, Numpy, and Numpy Mask arrays were used to develop an application that produces climate forecasts using information from numerical weather models.

Jumping into a Documentation Journey with Sphinx and Jupyter

Carol Willing in Python Libraries

Learn how the intermediate features of Sphinx, such as extensions, templates, and document conversion, combined with Jupyter Notebooks gave timely and interactive information to developers and early users of JupyterHub.

(= Hy (+ Python Lisp) )

Éléonore Mayola in Other

I'm excited about writing a Lisp that is Pythonic! It is also a way to get started with Lisp for Python developers. But basically it's a lot of fun and as easy as (print "hello world") !

Choose Your Own Adventure: Learn Python!

Roxanne Johnson in Community

Learning to program in any language can be a challenge. There are so many resources freely available; where do you start? This poster shares a Choose Your Own Adventure style game being developed (in Python) to help beginning programmers figure out how to learn the basics, design an individualized learning plan, and effectively locate resources that will work for them.

Solidarity of Systers

Khushbu Parakh in Community

STOP VIOLENCE AGAINST WOMEN Here we are united towards the common goal of providing support, both moral and legal, to women who have been subjected to a crime, may it be of any type. If you have been through something which keeps haunting you repeatedly then we encourage you to come forward and report the violence you have been subjected to.

Bringing Introductory Computer Science Concepts to Life Using Graphics

Emilia Gan, Ravi Gandham in Education

Students in introductory computer science classes are often too focused on doing things “right” to have fun with programming. Assignments involving graphics add an element of playfulness and foster a more relaxed environment for learning. Students typically produce work that exceeds assignment specifications, while concurrently internalizing programming concepts and developing debugging skills.

Experimentation Using Genetic Algorithms Made Easy with Pygame, Celery, and Numpy

Benjamin Bengfort in Science

Genetic algorithms are efficient optimizers inspired by biological evolution and widely used in academic research. However, GAs can be computationally intensive, particularly for simulation. In this poster we detail how Python tools, particularly Pygame, Celery, and Numpy were used in scientific experimentation that took days to compute the evolution of movement behaviors of a particle swarm.

Optimizing DNA jigsaw-puzzle solving by visualization

Samarth Rangavittal in Science

To analyze DNA information, letters produced by sequencing machines must be "assembled" into a superstring : the genome. Graph-based heuristics perform admirably, but require extensive & expensive parameter tuning on each sample. We propose a Python-based converter for fast DNA-assembly visualization, which can be used to optimize assembly without re-running code multiple times.

Web Apps that Learn: An Architecture for Machine Learning in Django

Benjamin Bengfort, Rebecca Bilbro in Web Frameworks

Web applications are becoming smarter and more personalized through the clever use of automatic optimization and machine learning algorithms. We present a standard architecture for Django web apps that utilize models trained via Scikit-Learn to tune experiences for specific users. By utilizing familiar tools, this architecture allows for reinforcing models that integrate directly with web apps.

To the Clouds: Service Orchestration and Cloud Deployment with Juju

Michael Foord in Other

Juju is a devops tool for automated deployments, with full stack service modelling and orchestration, in the cloud. Fully controllable with Python through "charms".

MMinte – Predicting metabolic microbial species interactions from community membership

Helena Mendes-Soares in Science

MMinte is a tool for predicting microbial interactions based on the species' metabolism by taking advantage of several modules used in life sciences research.

The #ILookLikeAnEngineer Movement and Ad Campaign

Michelle Glauser, Laura Jane Watkins in Community

Presented by the two main co-organizers of the #ILookLikeAnEngineer event and ad campaign, this poster will outline the #ILookLikeAnEngineer movement with a timeline, who related to the movement and why, where it spread to, which media outlets picked up on it, the resulting event and ad campaign, and more. We will also provide some answers to the “What now?” question.

Joy and Confidence in High Profile Software: A Test Harness for Climate Data Algorithm Development

Ryan Berkheimer in Science

Global climate research is now under intense public scrutiny. The results from the algorithms composing this research are all painstakingly peer reviewed, but the original fortran code can seem obtuse. While NOAA engineers refactor the code, a reusable, portable test harness written in python, using mongo and js, makes testing and progress tracking easy and transparent to all.

The Extendable Graphics System: An Introduction to EGS

Daniel Kaiser, Florian Rhiem in Python Libraries

In this poster session we introduce EGS, the extendable graphics system. EGS is a library for the unified creation of two- and three-dimensional graphics. We will present how you can visualize your data using, the high-level Python API, and how to create your own domain-specific extensions to EGS in C, C++ and Python, using the example of a molecule renderer.

Reqscan: An open source solution for laboratory requisition scanning, archiving and retrieval

Eviatar Bach in Other

Reqscan is an open-source Python program for patient requisition form (forms used in a clinical setting for medical tests) scanning and retrieval. When used with an auto document feeder (ADF) scanner, it improves the speed and accuracy of retrieval of patient information at a fraction of the price of commercial systems. It has been in use for three years at St. Paul's Hospital in Vancouver, BC.

TSTL: A little language for automated testing written in Python

Pranjal Mittal, Alex Groce in Testing

Writing a test harness is an onerous task. The lack of tools for automated testing is an obstacle to adopting effective automated test generation methods, including random testing. TSTL is a domain-specific language for testing, written in Python, & allowing embedded Python code, that makes it easy to produce test harnesses, usable with many different test generation methods and tools.

Single pixel thermal imaging with the Raspberry Pi and Python

Scott Sievert in Science

Thermal cameras are expensive ($4,000 to $40,000). However, exploiting sparsity and implementing the algorithm on a Raspberry Pi (with Python!) allows for a roughly $400 single pixel thermal camera.

PyKMIP: Key Management for Python

Peter Hamilton in Security

PyKMIP is a Python implementation of the Key Management Interoperability Protocol (KMIP), a client/server communication protocol for the storage and maintenance of key, certificate, and secret objects. PyKMIP provides a Python client and server implementation of the KMIP 1.1 specification, supporting basic lifecycle operations for the primary KMIP object types.

High Quality High Performance Clustering

Leland McInnes, John Healy in Python Libraries

Clustering data is a common problem in data science. In the absence of labelled data having confidence in the results of clustering can be challenging. We present a high performance clustering library for scalable high quality clustering.

DIY Command Line Tool in Python

Josh Shields in Python Core (language, stdlib, etc.)

Have you ever wanted your own console commands, but found that a BASH script wasn't practical? Python can do it! Python's standard library has great tools for controlling your development workspace. As a programmer, it is second nature to automate tasks. This project, a sitemap file generator called py_sitemapper, showcases an example of a Command Line Interface written in Python.

Python: A High-Schooler’s Perspective

Rohan Koodli in Science

Python is a great language for beginners and experts alike. In this presentation, I will explain my journey in Python, how I came to use it, and my recent projects. I will discuss some of my projects and my current project involving Phylogenetics and machine learning.

Dive into Natural Language Processing: How to judge debates using Python

Abhinav Gupta, Adyasha Maharana in Other

You are in a heated debate with your sibling over ‘Which game is better: Candy Crush vs Clash of Clans’ (the latter, obviously). How to decide the winner? Why not build a virtual debate moderator which does just that! This talk will guide you through the application of Python NLP techniques to analyze arguments during a debate and define a strategy to figure out the winner.

PyMoms: Including mothers in the tech community

Kate MacInnis in Community

PyladiesATX has formed a subgroup specifically to address the needs and visibility of its members with children, PyMoms. PyMoms holds meetups with childcare to create an inclusive atmosphere for women with children, and is reaching a diverse group of women, including young mothers, career-changers, entrepreneurs, and established mothers in technology.

Teaching Deaf Sign Language Users to Code Using Python

Sarah Jessica Leivers in Community

The English Language, which Python syntax is based upon, is a secondary language to Deaf sign language users. As such, Deaf people often have difficulty in using written language and need written language to be clear and simple for meaning to be comprehended. The guiding principles in ‘The Zen of Python’ by Tim Peters suggest that Python is an ideal language for teaching Deaf people to program.

Source control at Facebook scale

Pierre-Yves David in Other

Version control systems manage the most important asset of any software company: the code. At high scale, the choice of VCS can drastically affect workflows and productivity. This poster details how Facebook, in collaboration with the open source community, scaled Mercurial to meet the needs of source control at Facebook scale: six digits number of files and commits with thousands of users.

From Zero to SuperHero (website): Easy enough a 7 year old could do it

Russia Madden in Education

How I taught my 7 year old niece to build an interactive website while simultaneously learning. After completing a couple tutorials: "Getting Started with Python" and "Learn Python the Hard Way", I was excited to create an awesome web app. Unfortunately, information overload was seriously getting in the way of getting started.

Monte: A Python-based Programming Language for Secure Distributed Computation

Corbin Simpson in Security

Monte is a new programming language built using standard Python tooling.

Enabling Polyglot Persistence for Neo4j and MongoDB Using Python

William Lyon in Databases

Learn why you would want to use a graph database and a document database to power a single application. See how we implemented a MongoDB - Neo4j connector using Python to sync data from MongoDB to Neo4j.