PyCon AU 2011
PyCon Australia will be held in Sydney on the weekend of the 20th and 21st of August at the Sydney Masonic Center; 66 Goulburn Street, Sydney. We will be running sprints at the same venue after the conference on the 22nd and 23rd of August.
- August 20, 2011
- Number of videos:
Moving old sites into a new web platform is a pain. Often you need to pull apart perfectly good HTML just to spend time painstakingly putting back together again and converting hundreds of pages of content is a chore. Recently PretaWeb used tools to drastically simplify this process when converting genetics.edu.au to Plone 4.1. Diazo is a platform independent theming engine that leaves HTML untouched. Funnelweb is a static content migration tool for crawling and manipulating site content.
Keynote by Raymond Hettinger.
Lightning talks Sunday.
Recorded: August 23, 2011
Last updated: January 29, 2013
This is a panel discussion in which Nick Coghlan, Raymond Hettinger and Richard Jones discuss the state of Python 3, some of the new features, the 3rd party adoption, migration strategies and open to the floor for questions.
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.
CouchDB  _place_holder;(http://couchdb.apache.org/) is an open source, document-oriented NoSQL Database Management Server.It supports queries via views using MapReduce, and replication. The talk will give an overview of CouchDB followed by how to access and manipulate using Python. There are a number of python libraries for accessing couchdb and these will be quickly discussed followed by  _place_holder;how to use one of these libs with a Python web framework.
Writing software in an organisation or for ourselves, many people feel that they "should" somehow be doing Test Driven Development (TDD) because "everybody else" is and it's cool, somewhere between necessary and useful and they heard testing was good. When informed that must of TDD isn't about testing (despite the name!), confusion reigns. Behaviour Driven Development is a different way of approaching the "how to validate your code" problem.
(Mic issues for first ~1:30) 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 _place_holder;http://speed.pypy.org/. You too can have this kind of shinyness for (almost) free!.
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 behaviour, or to make it do things to was never supposed to do....
This presentation will outline key lessons learnt in developing scientific software in Python. Methods of maintaining and assuring code quality will be discussed.
Using generators as coroutines in App Engine to get more done.
Web applications which are able to dynamically deliver up content have _place_holder;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.
The CPython reference interpreter lies at the heart of a much wider Python ecosystem. The decisions that shape the future development of CPython ripple out and have a broad impact on the entire Python community. This talk covers the special place CPython occupies in the broader Python community, how the decisions that affect CPython's development are made, and how new developers can become involved in that process..
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.
Infinite 8-bit Platformer is a Free Software multiplayer user-created-content platform video game written in Pygame. It's a bit like a cross between a wiki and a game, because the players can also create and edit the levels. In this talk we will look at the development of the game over the last three years, including what has changed since PyCon 2010. We'll examine the sound, graphics, and networking architecture which is built upon pygame and asyncore (PodSixNet).
Lightning talks. See the whiteboard in the foyer for signup.
Recorded: August 22, 2011
Last updated: January 29, 2013
This talk will explore the core networking libraries available in Python.
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.
Pants (pantsweb.org) is an open source library that aims to make network programming in Python a breeze. This talk will outline challenges in network programming and how Pants approaches them. The audience will be briefly introduced to Pants' API through example code, and to its capabilities through benchmarks and comparisons with alternate frameworks..
Introduction to the Pyramid, the new web framework taking the python world by storm. This tutorial will cover the basics of a hello world app and cover some of the advanced features of pyramid that give it it's power such as traversal. Pyramid is part of the pylons project and is a successor to pylons and a continuation of the BFG framework. It's very simple to learn, runs fast yet has powerful concepts which help keep large web app creation a sane process..
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.
This a high level overview of the State of CPython interpreter and other python interpreters. The talk will mention about the  _place_holder;changes in 3.2 release and changes coming up in 3.3 release and status of Python2.7. It will also give the details of current state of PyPy Project, IronPython project and Jython Project..
A 30 minute foray into the world of the system administrator, focusing on situations shared between sysadmins and developers, however differ from perspective, motivations and problems. The primary goal here is to provide some light hearted anecdotes, examples and situations, that developers will relate to from their _place_holder;experiences _place_holder;and garner a new appreciation for the role of the sysadmin.
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.
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.
Python is a great language for prototyping computer vision algorithms, the availability of libraries such as Numpy and Scipy make for rapid development similar to that of Matlab, R and IDL. At the Bureau of Meteorology (BoM) we are solving the interesting problem of weather field warping. Warping (aka non-linear image registration) is used, for example, to determine what the predicted temperature will be hourly if we only have predictions every three hours
In this talk I'll be running through the current choices of web micro frameworks and comparing them by implementing a simple application.
Zookeepr [http://zookeepr.org/] is a comprehensive web-based conference management system, written in Python and built on Pylons. It has an unusual development history: custom created for the annual Linux.conf.au conference, there are yearly spikes in event-focused feature development, but relatively little of the ongoing development typically seen in open source projects.