REST APIs for Humans™ Nicola Iarocci Powered by Flask, Redis, MongoDB and good intentions the Eve REST API framework allows to effortlessly build and deploy highly customizable, fully featured RESTful Web Services. The talk will introduce the project and its community, recount why and how it's being developed, and show the road ahead.

Helium: Simplified web automation based on Selenium Michael Herrmann I present a new library called Helium that wraps around Selenium to reduce web script size by 66% and development effort by (in my tests) 75%. The key to Helium's success is that it allows to identify web elements by user-visible labels instead of HTML IDs, CSS selectors or XPaths. Slides: pdf

Securing internet services Mikko Ohtamaa Internet out there is not exactly a friendly place. In this talk I'll discuss about measurements you can take to protect your site, users and yourself against various attacks. Slides: pdf

How I built an tag-in system for a gym Johan Lundström Armed with only python and no real idea of how to actually do this, I set out on my quest through: The RFID djungel, the vast selection of freely available python modules of varying usefulness, hardware, API design and the perils of shipping and supporting system built entirely in python. Slides: pdf

New Scientific Plotting in Python Jack Parmer Matplotlib has wonderfully served the Python community as the cornerstone of scientific graphics. Recently, many additional Python plotting options have surfaced, aimed to make it easier to create graphics that are interactive and web-publishable. This talk will outline these new options using easy-to-follow, IPython notebooks. Slides: pdf

How do Python programmers use Python? Beatrice Åkerblom In an ongoing research project we collect data from running open source Python programs about how these programs are constructed to take advantage of the inherent dynamicity of the language. We are interested in several aspects, including the use of reflective mechanisms, dynamic code evaluation and generation, and unconstrained polymorphism due to dynamic typing. Slides pdf

Building an API for the University of Oxford David King At the University of Oxford we're building an API platform for use in application development both within the University and beyond. What are the benefits of this approach to application development and how are we making it work within a large institution such as Oxford. Slides: pdf

Enough Machine Learning to Make Hacker News Readable Again Ned Jackson Lovely It's inevitable that online communities will change, and that we'll remember the community with a fondness that likely doesn't accurately reflect the former reality. We'll explore how we can take a set of articles from an online community and winnow out the stuff we feel is unworthy. We'll explore some of the machine learning tools that are just a 'pip install' away, such as scikit-learn and nltk. Slides: interactive, pdf

Pycrastinate: TODO less, DO more. Isaac Bernat Tired of TODOs from people who have not touched that code in years? What about FIXMEs? Me too. This is why I wrote pycrastinate in first place, a tool to help you keep that under control (for new and legacy code alike). Slides: interactive, pdf

Deploying enterprise services 60 times a day using Python Robin Kåveland Hansen For anyone interested in devops, here is a real-world example of using Python and fabric to do around 60 application deployments across multiple servers every day. Focusing on simplicity and automated testing, we developed a deployment program that's easy for anyone to understand and contribute to. Slides pdf

How to write actually Object-oriented Code in Python Per Fagrell The multi-paradigm flexibility of Python can bite developers new to Python or object-orientation, since self-restraint and design know-how is needed to keep code style paradigm-consistent. Learn about OO principles like SOLID, DRY and Tell-Don't-Ask and how they apply in Python for more uniform, testable, and working OO code. Slides: pdf. Handouts: pdf

Testing with unittest.mock Ana Hristova unittest.mock is a Python testing library that allows you to replace parts of your application with mock objects and make assertions about how they have been used. This talk will give an overview of the library focusing on the core Mock class and the patch decorator that mock provides. Slides: interactive

Generators Will Free Your Mind James Powell Generators are one of the most notable features of Python, and they are a critical component of Python 3's driving focus on iterability as a core protocol. This talk introduces the basic concepts surrouding generators, generator expressions, and coroutines, then dives into ways that generators can improve our code: not just in terms of performance but also by offering us better ways to model our problems.

A CPython Eating Its Own Tail James Powell This is an expert-level talk that dives into CPython and discusses various ways to embed Python interpreters. It starts with the 'very high level' embedding & the 'pure' embedding, shows a fairly novel 'zero interpreter' embedding using Cython, a few attempts at a ctypes/cffi embedding, and builds to a finish with a source-filter embedding of a Python interpreter into itself.