Get Lanyrd on your mobile (iPhone, Android and more) - check it out here

Sessions at PyCon US 2012 about Python in D1

Your current filters are…

Clear

Wednesday 7th March 2012

  • Faster Python Programs through Optimization

    by Mike Müller

    This tutorial provides an overview of techniques to improve the performance of Python programs. The focus is on concepts such as profiling, difference of data structures and algorithms as well as a selection of tools and libraries that help to speed up Python.

    Objective

    This tutorial provides an overview of techniques to improve the performance of Python programs. The focus is on concepts such as profiling, diffrence of data structures and algorithms as well as a selection of tools an libraries that help to speed up Python.

    Intended Audience

    Python programmers who would like concepts to improve performance.

    Audience Level

    Programmers with good Python knowledge.

    Prerequisites

    Please bring your laptop with the operating system of your choice (Linux, Mac OS X, Windows). In addition to Python 2.6 or 2.7, we need:

    Method

    This is a hands-on course. Students are strongly encouraged to work along with the trainer at the interactive prompt. There will be exercises the students need to do on their own. Experience shows that this active involvement is essential for an effective learning.

    Outline

    • How fast is fast enough? (10 min)
    • Optimization guidelines (10 min)
    • Premature optimization
    • Optimization rules
    • Seven steps for incremental optimization
    • Optimization strategy (30 min)
    • Measuring in stones
    • Profiling CPU usage
    • Profiling memory usage
    • Algorithms and Anti-patterns (40 min)
    • String concatenation
    • List and generator comprehensions
    • The right data structure
    • Caching
    • The example (5 min)
    • Testing speed (5 min)
    • Pure Python (15 min)
    • Meet Psyco, the JIT (5 min)
    • Using PyPy (15 min)
    • NumPy for numeric arrays (10 min)
    • Using multiple CPUs with multiprocessing (20 min)
    • Combination of optimization strategies (10 min)
    • Results of different example implementations (5 min)

    At 9:00am to 12:20pm, Wednesday 7th March

    In D1, Santa Clara Convention Center

    Coverage video

Thursday 8th March 2012

  • Advanced Python I

    by Raymond Hettinger

    Have your Python skills have hit a plateau? Come learn from Python core developer and consultant Raymond Hettinger about the tips and tricks needed to move up to the next level.

    This tutorial will work through a series of real-world examples, showing how an understanding of the tools built into the Python interpreter or included in the standard library can be combined to solve difficult problems clearly and Pythonically. We will also discuss when and how to reach beyond the standard library when needed to address difficult algorithmic and optimization problems. This can be taken as a stand-alone session or in conjunction with the second session; the two sessions will be complementary.

    At 9:00am to 12:20pm, Thursday 8th March

    In D1, Santa Clara Convention Center

    Coverage note

  • Advanced Python II

    by Raymond Hettinger

    Have your Python skills have hit a plateau? Come learn from Python core developer and consultant Raymond Hettinger about the tips and tricks needed to move up to the next level.

    This tutorial will work through a series of real-world examples, showing how an understanding of the tools built into the Python interpreter or included in the standard library can be combined to solve difficult problems clearly and Pythonically. We will also discuss when and how to reach beyond the standard library when needed to address difficult algorithmic and optimization problems. This can be taken as a stand-alone session or in conjunction with the second session; the two sessions will be complementary.

    At 1:20pm to 4:40pm, Thursday 8th March

    In D1, Santa Clara Convention Center