•  

Sessions at PyCon AU 2011 about Python on Sunday 21st August

Your current filters are…

Clear
  • Keynote: Raymond Hettinger

    by Raymond Hettinger

    Keynote by Raymond Hettinger.

    At 9:15am to 9:55am, Sunday 21st August

  • Hosting Python Web Applications

    by Graham Dumpleton

    Web applications which are able to dynamically deliver up content have become a crucial part of the Internet landscape, with Python becoming an increasingly popular choice for the implementation of all manner of web applications. In order though for users to be able to access your web application you need to host it. The choices available are however many and varied with accurate information on which may be a good choice not always easy to find.

    This talk will give an overview of the different choices available for hosting Python web applications. It will cover mainstream web servers such as Apache and nginx, highlight the architectural differences between them and look at how Python web applications are bolted on to these web servers via language agnostic protocols such as FASTCGI/SCGI/AJP or more integrated solutions such as Apache/mod_wsgi and uWSGI. The alternate architecture of using a standalone Python web server such as gunicorn, Paste server or the CherryPy WSGI server behind a conventional web server acting as HTTP proxy will also be covered.

    The overall aim of the talk will be to give people a better appreciation for how web servers and your Python web application come together and some of the pros and cons of different solutions.

    At 10:20am to 10:50am, Sunday 21st August

  • Python for Science and Engineering, Part 1

    by Python Charmers

    This is Part 1 of a showcase in solving a variety of interesting scientific and engineering problems using Python, NumPy, and SciPy, and producing beautiful plots with Matplotlib.

    The focus is on the "wow" factor: "Wow! You can do all that in just a few lines of Python?!"

    The topics discussed are:
    - speech and image recognition (how to be head-hunted by Google)
    - bioinformatics (how to cure cancer)
    - statistical modelling (how to predict the stock market)

    The intended audience is graduates in science and engineering disciplines; Python users who want to know more about what's possible with tools like NumPy and SciPy; and users of high-level packages like Matlab or R and low-level languages like Fortran who want to get more interesting work done with less effort.

    At 10:20am to 12:10pm, Sunday 21st August

  • Say What You Mean: Meta-Programming a Declarative API

    by Ryan Kelly

    This talk will explore the use of python's meta-programming facilities to create a simple declarative API so that you can *say what you mean* - write code that focuses on the what and the why without being cluttered by the how. If you've ever wondered how the Django ORM or SQLObject work their magic, this is the talk for you.

    As motivating example and case study, I will build from scratch a basic clone of the "dexml" module, which lets you work with XML documents in a declarative, object-oriented manner. Through judicious use of decorators, descriptors and metaclasses, it packs a lot of logic and functionality into a very thin API.

    At 11:00am to 11:30am, Sunday 21st August

    Coverage video

  • Teaching Python to the young and impressionable

    by Georgina Wilcox and Katie M Bell

    We present two outreach programmes run by Sydney University for high school students: the National Computer Science School (http://www.ncss.edu.au) and the Girls’ Programming Network (http://sydney.edu.au/it/gpn). For the past four years we have been teaching Python to students in grades 9-12, and based on this experience we will discuss why Python is a good first language and the parts of it which are still difficult for students to grasp. We will also cover the structure of the programmes and tools used, in particular the online marking system for Python programming tasks.

    At 11:00am to 11:30am, Sunday 21st August

    Coverage video

  • Fun with App Engine 1.5.0

    by Greg Darke

    Using generators as coroutines in App Engine to get more done.

    At 11:40am to 12:10pm, Sunday 21st August

    Coverage video

  • The NCSS Challenge: teaching programming via automated testing

    by Tim Dawborn

    The NCSS Challenge (http://challenge.ncss.edu.au/) is an online programming competition for Australian high school students. There are four different courses being run during 2011: Introductory Python, Intermediate Python, Advanced Python, and Embedded Systems (using the Arduino). In 2010 we had over 1700 students participate in the Challenge.

    There are a number of interesting technical challenges which had to be overcome in order to facilitate such a system. Executing arbitrary code on your servers which is supplied somebody on the internet is a scary situation for any system administrator. We have developed an elegant solution for this problem whereby we can securely execute arbitrary code not restricted to any particular subset of languages.

    This presentation will be going through three aspects of the Challenge infrastructure. First, how the Challenge works from a competition point of view, and how we teach programming via automated testing. Second, we will cover the sandbox we developed to facilitate this arbitrary code execution. Last, we will cover the application stack powering the Challenge site itself.

    At 11:40am to 12:10pm, Sunday 21st August

    Coverage video

  • How to maintain big app stacks without losing your mind

    by Dylan Jay

    zc.buildout is a powerful build/configure/deployment tool for creating applications from multiple parts, some not python. It's perfect for sharing a development environment or deploy applications to many hosts.

    This tutorial will cover basic concepts, similarity to other tools such as virtual-env, puppet etc as well as practical examples.

    zc.buildout has successful been used with web applications such as Plone, django and pyramid.

    At 1:10pm to 1:55pm, Sunday 21st August

  • Python for Science and Engineering, Part 2

    by Python Charmers

    This is Part 2 of a showcase in solving a variety of interesting scientific and engineering problems using Python, NumPy, and SciPy, and producing beautiful plots with Matplotlib.

    The focus is on the "wow" factor: "Wow! You can do all that in just a few lines of Python?!"

    Sample topics discussed include:
    - speech and image recognition (how to be head-hunted by Google)
    - bioinformatics (how to cure cancer)
    - statistical modelling (how to predict the stock market)

    The intended audience is graduates in science and engineering disciplines; Python users who want to know more about what's possible with tools like NumPy and SciPy; and users of high-level packages like Matlab or R and low-level languages like Fortran who want to get more interesting work done with less effort.

    At 1:10pm to 2:50pm, Sunday 21st August

  • Web micro-framework battle

    by Richard Jones

    In this talk I'll be running through the current choices of web micro frameworks and comparing them by implementing a simple application.

    At 1:10pm to 1:55pm, Sunday 21st August

  • Ah! I see you have the machine that goes "BING"!

    by Dr. Graeme Cross

    Whirrr, buzz, squelch, click, smash, bing!

    Python is so much more than a language for Web 2.0 and system administration: Python can also be used for interfacing into the real world.

    Learn how to connect Python up to stepper motors, micro-fluidic pumps, A/D sensors, switches, solenoids, vacuum/pressure valves and XYZ robots, with simple off-the-shelf control hardware.

    We'll also cover various control interfaces (such as pyserial), concurrent control (eg threading), coupling to C/C++ and some tips and traps when using Python for embedded and real-time control.

    At 2:05pm to 2:50pm, Sunday 21st August

    Coverage video

  • Panel: Python in the webs

    by Richard Jones, Dylan Jay, Russell Keith-Magee and Malcolm Tredinnick

    This will be a panel discussion wherein we wax philosophical about the state of web frameworks in Python - talking about invention, reinvention, multitudes of choice, how all of them suck, etc. Panelists will include Dylan Jay, Malcolm Tredinnick, Russell Keith-Magee and Richard Jones.

    At 2:05pm to 2:50pm, Sunday 21st August

    Coverage video

  • Benchmarking stuff made ridiculously easy (with lots of pictures)

    by Tennessee Leeuwenburg

    Tennessee has been working on a module for integrating cpu time management with unit testing using an easy-to-use decorator. With all the options turned on, this will produce a a performance history, tracked by revision, integrated with the software used to produce the benchmarking graphs as used on http://speed.pypy.org/. You too can have this kind of shinyness for (almost) free!

    At 3:10pm to 3:40pm, Sunday 21st August

  • Bytecode: What, Why, and How to Hack it

    by Ryan Kelly

    What's python really doing when it runs your scripts, and what's with all these .pyc files? Get inside the head of python.exe, learn how it sees your code, and then twist it to your own evil ends.

    This talk will discuss the basics of python's bytecode format, why and how it is used, and how you can dive into the bytecode of your running program - either to better understand its behavior, or to make it do things it was never supposed to do...

    At 3:10pm to 3:40pm, Sunday 21st August

    Coverage video

  • Meta-matters: using decorators for better Python programming

    by Dr. Graeme Cross

    The inbuilt decorators are commonly used by Python programmers to define static methods, class methods and properties, but many Python programmers don't know how to create their own custom decorators that can simplify their code, making it more readable, easier to extend and also easier to maintain.

    This tutorial will teach you the fundamental concepts of decorators, how to write your own decorators and also how to ensure your decorators play nice with functions, methods, docstrings and debuggers.

    At 3:10pm to 3:40pm, Sunday 21st August