EuroPython 2015

Bilbao, 20-26 July

Where

Euskalduna Conference Centre and Concert Hall

Pintxos (Tapas)

Fun fact #2

Streets in Bilbao have names both in Spanish and in Basque.

Open Street Maps displays names in one language and Google Maps is using the other one.

We came back with a lot of...

...knowledge about interesting talks that we would like to share today

Scaling MySQL with Python

MySQL 5.6 comes with some interesting features like:

  • Managing replications
  • Failover setup
  • Orchestration of multiple machines
  • Improved replications

Python for IT specialists' tasks automation

Using various tools and text expanders for:

  • Translating phrases
  • Checking you IP
  • Pretty formatting of code
  • Automatic image processing when you upload a file to a folder
  • etc.

Fun fact about Guido #1

His favorite text editor is ...

It Works on My Machine: Writing Python Code for Any Environment

  • Don't use hardcoded directory separators
  • Use six library
  • If six doesn't work, use you own conversion.py file

Writing quality code

Tools and techniques for measuring the quality of the code:

  • Cyclomatic complexity
  • Halstead metrics
  • Maintainability index
  • radon
  • pylint
  • Good practices for code reviews

Fun fact about Guido #2

His favorite exception is ...

KeyboardInterrupt

Code is not text! How graph technologies can help us to understand our code better.

Pattern based review tool for identifing issues and bugs:

Big Data Beautiful Visualization on the Browser with Bokeh

Interactive visualization library for large datasets.

  • D3.js
  • IPython Notebook

Distributed Workflows with Flowy

Library for building and running distributed, asynchronous workflows on different backends (Amazon SWF, Redis, Local).

def process_video(embed_subtitle, find_chapters, ...):
    def workflow(video_URL, subtitle_URL):
        new_URL = embed_subtitle(video_URL, subtitle_URL)
        webm_URL = encode_video(new_URL, 'webm')
        mpeg4_URL = encode_video(new_URL, 'mpeg4')
        ad_tags = target_ads(subtitle_URL)
        chapters = find_chapters(video_URL)
        thumbnails = [extract_thumbnail(video_URL, c)
                      for c in chapters]
        return video_URL, webm_URL, mpeg4_URL, thumbnails, ad_tags
    return workflow

Less Known Packaging Features and Tricks

Save your time and avoid packaging-induced-pain.

Mashing up py.test, coverage.py and ast.py to Take TDD to a New Level

Do you ♥ TTD but you hate waiting?

Fun fact about Python

It is time to write code for Python 2.7 3.5.

  • matrix multipliers (@)
  • type hints
  • PEP492 - async